名称

ST_ShiftLongitude — 将几何体的经度坐标在 -180..180 和 0..360 之间进行转换。

概要

geometry ST_ShiftLongitude(geometry geom);

描述

读取几何体中的每个点/顶点,并将其经度坐标从 -180..0 转换为 180..360,反之,如果介于这些范围之间,则从 180..360 转换为 -180..0。此函数是对称的,因此结果是 -180..180 数据的 0..360 表示形式,以及 0..360 数据的 -180..180 表示形式。

[Note]

这仅对经度/纬度坐标的数据有用;例如,SRID 4326(WGS 84 地理坐标系)

[Warning]

1.3.4 之前的错误导致此功能无法用于 MULTIPOINT。 1.3.4+ 版本也支持 MULTIPOINT。

此函数支持 3D,并且不会丢弃 z 索引。

增强功能:2.0.0 引入了对多面体曲面和 TIN 的支持。

注意:此函数在 2.2.0 版本中从 "ST_Shift_Longitude" 重命名为 "ST_ShiftLongitude"

此函数支持多面体曲面。

此函数支持三角形和不规则三角网曲面 (TIN)。

示例

--single point forward transformation
SELECT ST_AsText(ST_ShiftLongitude('SRID=4326;POINT(270 0)'::geometry))

st_astext
----------
POINT(-90 0)


--single point reverse transformation
SELECT ST_AsText(ST_ShiftLongitude('SRID=4326;POINT(-90 0)'::geometry))

st_astext
----------
POINT(270 0)


--for linestrings the functions affects only to the sufficient coordinates
SELECT ST_AsText(ST_ShiftLongitude('SRID=4326;LINESTRING(174 12, 182 13)'::geometry))

st_astext
----------
LINESTRING(174 12,-178 13)
        

另请参阅

ST_WrapX