ShortestLineTo (tipo de dados geography)
Retorna uma instância de LineString com dois pontos que representam a distância mais curta entre as duas instâncias de geography. O comprimento da instância de LineString retornado é a distância entre as duas instâncias de geography.
Sintaxe
.ShortestLineTo ( geography_other )
Argumentos
- geography_other
Especifica a segunda instância de geography para a qual a instância de geography de chamada está tentando determinar a distância mais curta.
Tipos de retorno
SQL Server tipo de retorno: geography
Tipo de retorno CLR: SqlGeography
Comentários
O método retorna uma instância de LineString com pontos de extremidade nas bordas das duas instâncias de geography sem intersecção que estejam sendo comparadas. O comprimento da instância de LineString é igual à distância mais curta entre as duas instâncias de geography. Uma instância de LineString vazia é retornada quando as duas instâncias de geography cruzam uma a outra.
Exemplos
A.Chamando ShortestLineTo() em instâncias sem interseção
Este exemplo localiza a distância mais curta entre uma instância de CircularString e uma instância de LineString e retorna a instância de LineString que conecta os dois pontos:
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.Chamando ShortestLineTo() em instâncias com interseção
Este exemplo retorna uma instância de LineString vazia porque a instância de LineString cruza a instância de 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();