ST_Angle — Gibt den Winkel zwischen 3 Punkten oder zwischen 2 Vektoren (4 Punkte oder 2 Linien) zurück.
float ST_Angle(
geometry point1, geometry point2, geometry point3, geometry point4)
;
float ST_Angle(
geometry line1, geometry line2)
;
Gibt die größte 3-dimensionale Distanz zwischen zwei geometrischen Objekten als Linie zurück
Variant 1: computes the angle enclosed by the points P1-P2-P3. If a 4th point provided computes the angle points P1-P2 and P3-P4
Variant 2: computes the angle between two vectors S1-E1 and S2-E2, defined by the start and end points of the input lines
Das Ergebnis wird in Radiant ausgegeben. Wie im folgenden Beispiel gezeigt, kann mit der in PostgreSQL integrierten Funktion "degrees()" von der Einheit Radiant auf die Einheit Grad umgerechnet werden.
ST_Angle(P1,P2,P3) = ST_Angle(P2,P1,P2,P3)
Verfügbarkeit: 2.5.0
Längste Strecke zwischen Polygon und Polygon
SELECT degrees( ST_Angle('POINT(0 0)', 'POINT(10 10)', 'POINT(20 0)') ); degrees --------- 270
Angle between vectors defined by four points
SELECT degrees( ST_Angle('POINT (10 10)', 'POINT (0 0)', 'POINT(90 90)', 'POINT (100 80)') ); degrees ------------------- 269.9999999999999
Angle between vectors defined by the start and end points of lines
SELECT degrees( ST_Angle('LINESTRING(0 0, 0.3 0.7, 1 1)', 'LINESTRING(0 0, 0.2 0.5, 1 0)') ); degrees -------------- 45