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


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

Возвращает 1, если экземпляр geometry связан с другим экземпляром geometry, где связь определяется значением шаблона матрицы DE-9IM; в противном случае возвращается 0.

Синтаксис

.STRelate ( other_geometry, intersection_pattern_matrix )

Аргумент

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

  • intersection_pattern_matrix
    Строка типа nchar(9) кодирует приемлемые значения для устройства шаблона матрицы DE-9IM между двумя экземплярами geometry.

Замечания

Этот метод всегда возвращает значение NULL, если у экземпляров geometry не совпадают идентификаторы пространственной ссылки (SRID). Этот метод вызывает исключение ArgumentException, если формат матрицы неправильный.

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

Возвращаемый тип SQL Server: bit

Возвращаемый тип CLR: SqlBoolean

Примеры

В следующем примере используется STRelate(), чтобы проверить отсутствие пространственного перекрытия двух экземпляров geometry с использованием шаблона DE-9IM.

DECLARE @g geometry;
DECLARE @h geometry;
SET @g = geometry::STGeomFromText('LINESTRING(0 2, 2 0, 4 2)', 0);
SET @h = geometry::STGeomFromText('POINT(5 5)', 0);
SELECT @g.STRelate(@h, 'FF*FF****');

См. также

Другие ресурсы