Поделиться через


STIntersection (тип данных geometry)

Применимо к:SQL ServerБаза данных SQL AzureУправляемый экземпляр SQL AzureБаза данных SQL в Microsoft Fabric

Возвращает объект, представляющий точки, в которых экземпляр geometry пересекается с другим экземпляром geometry.

Syntax

  
.STIntersection ( other_geometry )  

Arguments

other_geometry
Другой экземпляр geometry, сравниваемый с экземпляром, для которого вызван метод STIntersection(), чтобы определить место их пересечения.

Типы возвращаемых данных

Тип возвращаемых данных SQL Server: geometry

Тип возвращаемых данных CLR: SqlGeometry

Remarks

Метод STIntersection() всегда возвращает значение NULL, если идентификаторы пространственных ссылок (SRID) экземпляров geometry не совпадают. Результат может содержать сегменты дуги только в том случае, если они содержатся во входном экземпляре.

Examples

A. Использование STIntersection() в экземплярах Polygon

В следующем примере с помощью метода STIntersection() вычисляется пересечение двух многоугольников.

DECLARE @g geometry;  
DECLARE @h geometry;  
SET @g = geometry::STGeomFromText('POLYGON((0 0, 0 2, 2 2, 2 0, 0 0))', 0);  
SET @h = geometry::STGeomFromText('POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))', 0);  
SELECT @g.STIntersection(@h).ToString();  

B. Использование STIntersection() в экземпляре CurvePolygon

Следующий пример возвращает экземпляр, содержащий сегмент дуги.

 DECLARE @g geometry = 'CURVEPOLYGON (CIRCULARSTRING (0 -4, 4 0, 0 4, -4 0, 0 -4))';  
 DECLARE @h geometry = 'POLYGON ((1 -1, 5 -1, 5 3, 1 3, 1 -1))';  
 SELECT @h.STIntersection(@g).ToString();

См. также

Методы OGC в экземплярах Geometry