ST_Relate
基于指定的 DE-9IM 模式矩阵字符串,确定给定的 GEOMETRY 对象是否与另一个 GEOMETRY 对象在空间上相关。
DE-9IM 标准确定了两个对象彼此在空间上的相关性。
行为类型
不可变语法
ST_Relate( g1, g2, matrix )
参数
g1
- 空间对象,类型为 GEOMETRY
g2
- 空间对象,类型为 GEOMETRY
matrix
- DE-9IM 模式矩阵字符串,类型为 CHAR(9)。此字符串表示 3 x 3 限制矩阵,对应两个几何图形各自的内部、边界和外部交集的维度限制。必须恰好包含 9 个以下字符:
-
T
-
F
-
0
-
1
-
2
-
*
-
返回
BOOLEAN
支持的数据类型
- 数据类型
- GEOMETRY
- Point
- 是
- Multipoint
- 是
- Linestring
- 是
- Multilinestring
- 是
- Polygon
- 是
- Multipolygon
- 是
- GeometryCollection
- 是
示例
以下示例显示了 ST_Relate 的用法。
“等于”对应的 DE-9IM 模式为'T*F**FFF2'
:
=> SELECT ST_Relate(ST_GeomFromText('LINESTRING(0 1,2 2)'),
ST_GeomFromText('LINESTRING(2 2,0 1)'), 'T*F**FFF2');
ST_Relate
--------------
t
(1 row)
“重叠”对应的 DE-9IM 模式为'T*T***T**'
:
=> SELECT ST_Relate(ST_GeomFromText('POLYGON((-1 -1,0 1,2 2,-1 -1))'),
ST_GeomFromText('POLYGON((0 1,1 -1,1 1,0 1))'), 'T*T***T**');
ST_Relate
-----------
t
(1 row)