名称

ST_Project — 返回从起始点按距离和方位角(方位)投影的点。

概要

geometry ST_Project(geometry g1, float distance, float azimuth);

geometry ST_Project(geometry g1, geometry g2, float distance);

geography ST_Project(geography g1, float distance, float azimuth);

geography ST_Project(geography g1, geography g2, float distance);

描述

返回沿测地线从给定点按指定距离和方位角(方位)投影的点。这被称为直接测地线问题。

双点版本使用从第一个点到第二个点的路径来隐式定义方位角,并像以前一样使用距离。

距离以米为单位。支持负值。

方位角(也称为航向或方位)以弧度为单位。它是从正北方向顺时针测量的。

  • 北方是方位角零 (0 度)

  • 东方是方位角 π/2 (90 度)

  • 南方是方位角 π (180 度)

  • 西方是方位角 3π/2 (270 度)

支持负方位角值和大于 2π (360 度) 的值。

可用性: 2.0.0

增强: 2.4.0 允许负距离和非标准化的方位角。

增强: 3.4.0 允许几何参数和省略方位角的双点形式。

示例:在 100,000 米和方位角 45 度处的投影点

SELECT ST_AsText(ST_Project('POINT(0 0)'::geography, 100000, radians(45.0)));
--------------------------------------------
 POINT(0.635231029125537 0.639472334729198)