ST_Crosses
如果两个输入几何体的 2D 投影相互交叉,ST_Crosses 将返回 true。
语法
ST_Crosses(geom1, geom2)
参数
- geom1
-
一个
GEOMETRY
数据类型的值,或一个计算结果为GEOMETRY
类型的表达式。 - geom2
-
一个
GEOMETRY
数据类型的值,或一个计算结果为GEOMETRY
类型的表达式。
返回类型
BOOLEAN
如果 geom1 或 geom2 为 null,则返回一个错误。
如果 geom1 或 geom2 为几何体集合,则返回一个错误。
如果 geom1 和 geom2 不具有相同的空间参考系统标识符 (SRID) 值,则返回一个错误。
示例
以下 SQL 检查第一个面是否与第二个多点相交。在此示例中,多点与面的内部和外部相交,这就是 ST_Crosses返回 true 的原因。
SELECT ST_Crosses (ST_GeomFromText('polygon((0 0,10 0,10 10,0 10,0 0))'), ST_GeomFromText('multipoint(5 5,0 0,-1 -1)'));
st_crosses
-------------
true
以下 SQL 检查第一个面是否与第二个多点相交。在此示例中,多点与面的外部相交,而不是其内部相交,这就是 ST_Crosses 返回 false 的原因。
SELECT ST_Crosses (ST_GeomFromText('polygon((0 0,10 0,10 10,0 10,0 0))'), ST_GeomFromText('multipoint(0 0,-1 -1)'));
st_crosses
-------------
false