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