OpenGIS 规范定义了以下函数,使用精确的对象形状来测试两个几何值g1
和
之间的关系
。g2
返回值 1 和 0 分别表示 true 和 false,除了
ST_Distance()
返回距离值的 。
返回 1 或 0 表示是否
g1
完全包含g2
. 这测试相反的关系作为ST_Within()
。ST_Crosses()
并且Crosses()
是同义词。有关详细信息,请参阅 的说明ST_Crosses()
。术语空间交叉表示具有以下属性的两个给定几何之间的空间关系:
这两个几何相交。
它们的交集导致几何尺寸比两个给定几何尺寸的最大尺寸小一维。
它们的交集不等于两个给定的几何图形中的任何一个。
此函数返回 1 或 0 以指示是否在
g1
空间上交叉g2
。如果g1
是 aPolygon
或 aMultiPolygon
,或者如果g2
是 aPoint
或 aMultiPoint
,则返回值为NULL
。ST_Crosses()
并且Crosses()
是同义词。返回 1 或 0 以指示
g1
在空间上是否与(不相交)不相交g2
。g1
返回和 之间的距离g2
。mysql> SET @g1 = Point(1,1); mysql> SET @g2 = Point(2,2); mysql> SELECT ST_Distance(@g1, @g2); +-----------------------+ | ST_Distance(@g1, @g2) | +-----------------------+ | 1.4142135623730951 | +-----------------------+
返回 1 或 0 以指示
g1
在空间上是否等于g2
.mysql> SET @g1 = Point(1,1), @g2 = Point(2,2); mysql> SELECT ST_Equals(@g1, @g1), ST_Equals(@g1, @g2); +---------------------+---------------------+ | ST_Equals(@g1, @g1) | ST_Equals(@g1, @g2) | +---------------------+---------------------+ | 1 | 0 | +---------------------+---------------------+
返回 1 或 0 以指示是否在
g1
空间上相交g2
。如果两个几何图形相交并且它们的相交导致具有相同维度但不等于任何给定几何图形的几何图形,则它们在 空间上重叠。
此函数返回 1 或 0 以指示是否在
g1
空间上重叠g2
。如果两个几何体的内部不相交,但其中一个几何体的边界与另一个几何体的边界或内部相交,则 两个几何体在空间上接触。
此函数返回 1 或 0 以指示是否在
g1
空间上接触g2
。ST_Touches()
并且Touches()
是同义词。返回 1 或 0 以指示是否
g1
在空间范围内g2
。这测试相反的关系作为ST_Contains()
。ST_Touches()
并且Touches()
是同义词。有关详细信息,请参阅 的说明ST_Touches()
。