ST_Angle - Amazon Redshift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

ST_Angle

ST_Angle 返回顺时针测量的点之间的角度 (以弧度为单位),如下所示:

  • 如果输入三个点,则测量返回的角度 P1-P2-P3就像顺时针从 P1 旋转到 P3 P2获得的角度一样。

  • 如果输入了四个点,则返回由有向线 P1-P2 和 P3-P4 构成的返回顺时针角度。如果输入是退化案例(即 P1 等于 P2或 P3 等于 P4则返回 null。

返回值以弧度为单位,范围为 [0, 2 度]。

Syntax

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

Arguments

geom1

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。子类型必须是 POINT

geom2

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。子类型必须是 POINT

geom3

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。子类型必须是 POINT

geom4

一个 GEOMETRY 数据类型的值,或一个计算结果为 GEOMETRY 类型的表达式。子类型必须是 POINT

返回类型

DOUBLE PRECISION.

如果 geom1 等于 geom2geom2 等于 geom3则返回 null。

如果 geom1geom2geom3geom4 为 null,则返回 null。

如果 geom1geom2geom3geom4 不是二维点,则返回一个错误。

如果 geom1geom2geom3geom4 没有相同的空间参考系统标识符 (SRID) 值,则返回错误。

Examples

以下 SQL 返回转换为三个输入点的度数的角度。

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

以下 SQL 返回转换为四个输入点的度数的角度。

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