ST_Angle - Amazon Redshift

ST_Angle

ST_Angle は、次のように時計回りに測定されたポイント間の角度をラジアン単位で返します。

  • 3 つのポイントを入力した場合、戻り角度 P1-P2-P3 は、P1 から P3 まで P2 を中心に時計回りに回転して、獲得した角度として測定されます。

  • 4 つのポイントを入力した場合、有向線 P1-P2 と P3-P4 がなす時計回りの角度が返されます。入力が縮退の場合 (つまり、P1 が P2 に等しい、または P3 が P4 に等しい場合)、null が返されます。

戻り値はラジアンで、範囲は [0, 2π) です。

ST_Angle は、入力ジオメトリの 2D 射影に対して動作します。

構文

ST_Angle(geom1, geom2, geom3)
ST_Angle(geom1, geom2, geom3, geom4)

引数

geom1

データ型 GEOMETRY の値または GEOMETRY 型と評価される式の値。サブタイプは POINT である必要があります。

geom2

データ型 GEOMETRY の値または GEOMETRY 型と評価される式の値。サブタイプは POINT である必要があります。

geom3

データ型 GEOMETRY の値または GEOMETRY 型と評価される式の値。サブタイプは POINT である必要があります。

geom4

データ型 GEOMETRY の値または GEOMETRY 型と評価される式の値。サブタイプは POINT である必要があります。

戻り型

DOUBLE PRECISION.

geom1geom2 と等しい場合、または geom2geom3 と等しい場合は、null が返されます。

geom1geom2geom3、または geom4 が null の場合は、null が返されます。

geom1geom2geom3、または geom4 のいずれかが空のポイントである場合は、エラーが返されます。

geom1geom2geom3geom4 の空間参照系識別子 (SRID) が同じ値ではない場合は、エラーが返されます。

次の SQL は、3 つの入力ポイントの角度に変換された角度を返します。

SELECT ST_Angle(ST_Point(1,1), ST_Point(0,0), ST_Point(1,0)) / Pi() * 180.0 AS angle;
angle --------------- 45

次の SQL は、4 つの入力ポイントの角度に変換された角度を返します。

SELECT ST_Angle(ST_Point(1,1), ST_Point(0,0), ST_Point(1,0), ST_Point(2,0)) / Pi() * 180.0 AS angle;
angle --------------- 225