ST_CROSSES
Синтаксис
ST_CROSSES(g1,g2)
Описание
Возвращает 1 если геометрия g1 пространственно пересекает геометрию g2. Возвращает NULL если g1 является Многоугольником или Многократным многоугольником, или если g2 является Точкой или Многоточечной. В противном случае возвращает 0.
Термин «пространственно пересекает» обозначает пространственное отношение между двумя заданными геометриями, которое обладает следующими свойствами:
- Две геометрии пересекаются
- Их пересечение приводит к геометрии, размерность которой на единицу меньше максимальной размерности двух заданных геометрий
- Их пересечение не равно ни одной из двух заданных геометрий
ST_CROSSES() использует формы объектов, в то время как CROSSES(), основанная на исходной реализации MySQL, использует прямоугольники обрамления объектов.
Примеры
SET @g1 = ST_GEOMFROMTEXT('LINESTRING(174 149, 176 151)');
SET @g2 = ST_GEOMFROMTEXT('POLYGON((175 150, 20 40, 50 60, 125 100, 175 150))');
SELECT ST_CROSSES(@g1,@g2);
+---------------------+
| ST_CROSSES(@g1,@g2) |
+---------------------+
| 1 |
+---------------------+
SET @g1 = ST_GEOMFROMTEXT('LINESTRING(176 149, 176 151)');
SELECT ST_CROSSES(@g1,@g2);
+---------------------+
| ST_CROSSES(@g1,@g2) |
+---------------------+
| 0 |
+---------------------+
Содержимое, воспроизведенное на этом сайте, является собственностью соответствующих владельцев, и это содержимое не проверяется заранее компанией MariaDB. Мнения, информация и мнения, выраженные в этом содержании, не обязательно отражают точку зрения MariaDB или любой другой стороны.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/st_crosses/