返回给定的两个Geometry对象间的相接情况。
语法
boolean ST_Touches(geometry g1 , geometry g2);
参数
参数名称 | 描述 |
---|---|
g1 | 第一个Geometry对象。 |
g2 | 第二个Geometry对象。 |
描述
- 如果g1和g2之间唯一的共同点位于g1和g2的边界的并集中,则返回True。
- 两个对象间的DE-9IM交集关系满足以下结果之一:
- FT*******
- F**T*****
- F***T****
- ST_Touches关系适用于Area/Area、Line/Line、Line/Area、Point/Area和Point/Line。
- ST_Touches关系不适用于Point/Point。
- 该函数不支持GeometryCollection类型对象作为输入参数。
- 该函数会自动生成一个bounding box用于利用Geometry对象上的索引。如果不想使用索引,请使用函数_ST_Touches。
示例
SELECT ST_Touches('LINESTRING(0 0,0 2)'::geometry, 'LINESTRING(0 2,0 3)'::geometry); st_touches ------------ t (1 row)
- 不满足DE-9IM结果的情况:
SELECT ST_Touches(g1,g2), ST_Relate(g1,g2) FROM (SELECT 'LINESTRING(0 0,0 2)'::geometry as g1, 'LINESTRING(0 1,0 3)'::geometry as g2) as test; st_touches | st_relate ------------+----------- f | 1010F0102 (1 row)