ShortestLineTo (tipo di dati geography)
Restituisce un'istanza LineString con due punti che rappresentano la distanza più breve tra le due istanze geography. La lunghezza dell'istanza LineString restituita è la distanza tra le due istanze geography.
Sintassi
.ShortestLineTo ( geography_other )
Argomenti
- geography_other
Specifica la seconda istanza geography per cui l'istanza geography chiamante tenta di determinare la distanza più breve.
Tipi restituiti
SQL Server tipo restituito: geography
Tipo CLR restituito: SqlGeography
Osservazioni
Il metodo restituisce un'istanza LineString con endpoint che si trovano sui bordi delle due istanze geography non intersecate messe a confronto. La lunghezza dell'istanza LineString restituita corrisponde alla distanza minore tra le due istanze geography. Viene restituita un'istanza LineString vuota quando le due istanze geography si intersecano a vicenda.
Esempi
A.Chiamata di ShortestLineTo() in istanze non intersecate
In questo esempio viene individuata la distanza più breve tra un'istanza CircularString e un'istanza LineString e viene restituita l'istanza LineString che collega i due punti:
DECLARE @g1 geography = 'CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)';
DECLARE @g2 geography = 'LINESTRING(-119.119263 46.183634, -119.273071 47.107523, -120.640869 47.569114, -122.200928 47.454094)';
SELECT @g1.ShortestLineTo(@g2).ToString();
B.Chiamata di ShortestLineTo() in istanze intersecate
In questo esempio viene restituita un'istanza LineString vuota perché l'istanza LineString interseca l'istanza CircularString:
DECLARE @g1 geography = 'CIRCULARSTRING(-122.358 47.653, -122.348 47.649, -122.348 47.658, -122.358 47.658, -122.358 47.653)';
DECLARE @g2 geography = 'LINESTRING(-119.119263 46.183634, -119.273071 47.107523, -120.640869 47.569114, -122.348 47.649, -122.681 47.655)';
SELECT @g1.ShortestLineTo(@g2).ToString();