Name

ST_ShortestLine — Gibt die 2-dimenionale kürzeste Strecke zwischen zwei Geometrien als Linie zurück

Übersicht

geometry ST_ShortestLine(geometry geom1, geometry geom2);

geography ST_ShortestLine(geography geom1, geography geom2, boolean use_spheroid = true);

Beschreibung

Gibt die 2-dimensionale kürzeste Linie zwischen zwei Geometrien zurück. Die zurückgegebene Linie beginnt in geom1 und endet in geom2. Wenn geom1 und geom2 sich schneiden, ist das Ergebnis eine Linie mit Start und Ende am Schnittpunkt. Die Länge der Linie ist dieselbe, die ST_Distance für g1 und g2 zurückgibt.

Verbessert: 3.4.0 - Unterstützung für Geographie.

Verfügbarkeit: 1.5.0

Beispiele

Shortest line between a Point and a LineString.

Code
SELECT ST_ShortestLine(
        'POINT (160 40)',
        'LINESTRING (10 30,50 50,30 110,70 90,180 140,130 190)') As sline;
Ausgabe von Rastern
LINESTRING(160 40,125.75342465753425 115.34246575342466)
Figure
Geometry figure for visual-st-shortestline-01

Shortest line between polygons.

Code
SELECT ST_ShortestLine(
         'POLYGON ((190 150,20 10,160 70,190 150))',
         ST_Buffer('POINT(80 160)', 30)
                  ) AS llinewkt;
Ausgabe von Rastern
LINESTRING(131.59149149528952 101.89887534906195,101.21320343559643 138.78679656440357)
Figure
Geometry figure for visual-st-shortestline-02