計算軌跡每個中間點的轉向角,返回一個浮點數組。
文法
double precision[] ST_Angle(trajectory traj, boolean hasdirection default false);參數
| 參數名稱 | 描述 |
| traj | 軌跡對象。 |
| hasdirection | 是否計算軌跡的轉向方向。 |
描述
對軌跡的每個中間點(假設某個軌跡有n個點,則其有n-2個中間點),計算軌跡在此點的轉向角度。
- 如果在此點沿直線運動,則轉向角度為0。
- 如果在此點處停留在原地,則轉向角度為NaN。
樣本
SELECT ST_Angle(ST_MakeTrajectory('LINESTRING(0 0, 0 10, 10 10, 20 10, 30 0, 30 0, 20 10, 0 10, 0 0)'));
st_angle
-------------------------
{90,0,45,NaN,NaN,45,90}
(1 row)
SELECT ST_Angle(ST_MakeTrajectory('LINESTRING(0 0, 0 10, 10 10, 20 10, 30 0, 30 0, 20 10, 0 10, 0 0)'), true);
st_angle
---------------------------
{90,0,45,NaN,NaN,-45,-90}
(1 row)