名称

ST_Touches — 如果光栅 rastA 和 rastB 至少有一个公共点,但其内部不相交,则返回 true。

概要

boolean ST_Touches( raster rastA , integer nbandA , raster rastB , integer nbandB );

boolean ST_Touches( raster rastA , raster rastB );

描述

如果光栅 rastA 在空间上接触光栅 rastB,则返回 true。这意味着 rastA 和 rastB 至少有一个公共点,但其内部不相交。如果未提供波段号(或设置为 NULL),则在测试中仅考虑光栅的凸包。如果提供了波段号,则仅在测试中考虑具有值(非 NODATA)的像素。

[Note]

此函数将使用光栅上可能存在的任何索引。

[Note]

要测试光栅和几何的空间关系,请对光栅使用 ST_Polygon,例如 ST_Touches(ST_Polygon(raster),geometry)。

可用性:2.1.0

示例

SELECT r1.rid, r2.rid, ST_Touches(r1.rast, 1, r2.rast, 1) FROM dummy_rast r1 CROSS JOIN dummy_rast r2 WHERE r1.rid = 2;

 rid | rid | st_touches
-----+-----+------------
   2 |   1 | f
   2 |   2 | f
            

另请参阅

ST_Intersects