ST_Overlaps
确定 GEOMETRY 对象是否与另一个 GEOMETRY 对象共享空间但未完全包含在该对象范围内。它们必须在其内部重叠。如果两个对象在单个点接触,或仅仅沿边界相交,则二者没有重叠。两个参数必须具有相同的维度;否则 ST_Overlaps 将返回 FALSE。
行为类型
不可变语法
ST_Overlaps ( g1, g2 )
参数
g1
- 空间对象,类型为 GEOMETRY
g2
- 空间对象,类型为 GEOMETRY
返回
BOOLEAN
支持的数据类型
- 数据类型
- GEOMETRY
- Point
- 是
- Multipoint
- 是
- Linestring
- 是
- Multilinestring
- 是
- Polygon
- 是
- Multipolygon
- 是
- GeometryCollection
- 是
示例
以下示例显示了 ST_Overlaps 的用法。
Polygon_1 与 Polygon_2 重叠但未完全包含 Polygon_2:
=> SELECT ST_Overlaps(ST_GeomFromText('POLYGON((0 0, 0 1, 1 1, 0 0))'),
ST_GeomFromText('POLYGON((0.5 0.5, 0.7 0.5, 0.7 0.7, 0.5 0.7, 0.5 0.5))'));
ST_Overlaps
-------------
t
(1 row)
具有不同维度的两个对象:
=> SELECT ST_Overlaps(ST_GeomFromText('LINESTRING(2 2,4 4)'),
ST_GeomFromText('POINT(3 3)'));
ST_Overlaps
-------------
f
(1 row)