Condividi tramite


STRelate (tipo di dati geometry)

Restituisce 1 se un'istanza geometry è correlata a un'altra istanza geometry. La relazione è definita da un valore della matrice del modello DE-9IM (Dimensionally Extended 9 Intersection Model). In caso contrario, restituisce 0.

Sintassi

.STRelate ( other_geometry, intersection_pattern_matrix )

Argomenti

  • other_geometry
    Altra istanza geometry da confrontare con l'istanza sulla quale STRelate() viene richiamato.

  • intersection_pattern_matrix
    Stringa di tipo nchar(9) che codifica valori accettabili per il dispositivo a matrice del modello DE-9IM tra le due istanze geometry.

Osservazioni

Questo metodo restituisce sempre Null se gli identificatori SRID delle istanze geometry non corrispondono. Questo metodo genererà un'eccezione ArgumentException se la matrice non è formattata in modo corretto.

Tipi restituiti

Tipo SQL Server restituito: bit

Tipo CLR restituito: SqlBoolean

Esempi

Nell'esempio seguente viene utilizzato STRelate() per verificare se due istanze geometry sono disgiunte a livello spaziale utilizzando un modello DE-9IM esplicito.

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****');

Vedere anche

Altre risorse