Compartilhar via


ShortestLineTo (tipo de dados geography)

Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Banco de Dados SQL no Microsoft Fabric

Retorna uma instância de LineString com dois pontos que representam a distância mais curta entre as duas instâncias de geografia. O comprimento da instância de LineString retornado é a distância entre as duas instâncias de geografia.

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

Tipo de retorno do SQL Server: geography

Tipo de retorno do CLR: SqlGeography

Comentários

O método retorna uma instância de LineString com pontos de extremidade nas bordas das duas instâncias de geografia sem intersecção que estão sendo comparadas. O comprimento de LineString retornado é igual à distância mais curta entre as duas instâncias de geografia. Uma instância de LineString vazia é retornada quando as duas instâncias de geografia se interseccionam.

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();

Consulte Também

Métodos estendidos em instâncias geography
ShortestLineTo (tipo de dados geometry)