Freigeben über


ShortestLineTo (geography-Datentyp)

Gibt eine LineString-Instanz mit zwei Punkten zurück, die den kürzesten Abstand zwischen den zwei geography-Instanzen darstellen. Die Länge der LineString-Instanz, die zurückgegeben wurde, entspricht dem Abstand zwischen den beiden geography-Instanzen.

Syntax

.ShortestLineTo ( geography_other )

Argumente

  • geography_other
    Gibt die zweite geography-Instanz an, für die von der aufrufenden geography-Instanz versucht wird, den kürzesten Abstand zu bestimmen.

Rückgabetypen

SQL Server Rückgabetyp: geography

CLR-Rückgabetyp: SqlGeography

Hinweise

Die Methode gibt eine LineString-Instanz mit Endpunkten zurück, die auf den Rändern der beiden Instanzen von geography liegen, die verglichen werden und sich nicht überschneiden. Die Länge der LineString-Instanz, die zurückgegeben wurde, entspricht dem geringsten Abstand zwischen den beiden geography-Instanzen. Wenn sich die beiden Instanzen von geography überschneiden, wird eine leere Instanz von LineString zurückgegeben.

Beispiele

A.Aufrufen von ShortestLineTo() für sich nicht überschneidende Instanzen

In diesem Beispiel wird der geringste Abstand zwischen einer Instanz von CircularString und einer Instanz von LineString ermittelt, und die Instanz von LineString wird zurückgegeben, die die beiden Punkte verbindet:

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.Aufrufen von ShortestLineTo() für sich überschneidende Instanzen

In diesem Beispiel wird eine leere Instanz von LineString zurückgegeben, da die sich die Instanz von LineString und die Instanz von CircularString überschneiden:

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

Siehe auch

Andere Ressourcen

Erweiterte Methoden für geography-Instanzen