如果兩個輸入的Geometry對象有部分交集但互相不包含,則該函數返回True。
文法
boolean ST_Crosses(geometry g1 , geometry g2);參數
| 參數名稱 | 描述 |
| g1 | 第一個Geometry對象。 |
| g2 | 第二個Geometry對象。 |
描述
- 兩個Geometry對象內部的交集不得為空白集,相交集合對象的維度必須比兩個輸入對象的最大維度值要小。
- 兩個Geometry對象的交集不得等於任何一個來源物件。否則,它返回False。
- 兩個Geometry對象的DE-9IM
- T*T******(對於Point/Line,Point/Area,和Line/Area的情況)
- T*****T**(對於Line/Point,Area/Point,和Area/Line的情況)
- 0********(對於Line/Line的情況)
- 該函數不支援GeometryCollection類型對象作為輸入參數。
- 該函數會自動產生一個bounding box用於利用Geometry對象上的索引。如果不想使用索引,請使用函數_ST_Crosses。
樣本
- 預設調用:
SELECT ST_Crosses('LINESTRING(0 0,3 3)'::geometry,'LINESTRING(0 1,1 0)'::geometry); st_crosses ------------ t (1 row) - 有重疊:
SELECT ST_Crosses('LINESTRING(0 0,3 3)'::geometry,'LINESTRING(0 0,1 1)'::geometry); st_crosses ------------ f (1 row) - 重疊地區維度與兩個輸入對象的最大維度值一致:
SELECT ST_Crosses('LINESTRING(0 0,3 3)'::geometry,'LINESTRING(1 1,4 4)'::geometry); st_crosses ------------ f (1 row)