ST_INVERSETRANSFORMPIPELINE
📄字数 852
👁️阅读量 加载中...
功能描述
返回一个新的几何体,其坐标值使用定义的坐标变换管道的逆变换变换到不同的空间参考系。
语法格式
sql
GEOMETRY ST_INVERSETRANSFORMPIPELINE(GEOMETRY geom, VARCHAR pipeline, INTEGER to_srid=0);参数说明
- geom:目标 GEOMETRY 对象;
- to_srid:目标空间参考系统ID,可选,默认SRID:0。
- pipeline:转换管道。使用以下任意字符串格式定义:
urn:ogc:def:coordinateOperation:AUTHORITY::CODE。 请注意,简单的EPSG:CODE字符串不能唯一标识坐标操作:相同的 EPSG 代码可用于 CRS 定义。- PROJ 管道字符串的形式为:
proj=pipeline ....将不会应用自动轴规范化,并且如有必要,调用者将需要添加额外的管道步骤,或删除axisswap步骤。 - 形式的串联操作:
urn:ogc:def:coordinateOperation,coordinateOperation:EPSG::3895,coordinateOperation:EPSG::1618。
函数返回类型
GEOMETRY 类型
使用说明
- 使用 ST_TRANSFORMPIPELINE 时,管道将向前执行。 使用 ST_INVERSETRANSFORMPIPELINE,管道以相反方向执行。
- 使用管道的转换是 ST_TRANSFORM 的专门版本。 在大多数情况下,ST_TRANSFORM 将选择正确的操作在坐标系之间进行转换,并且应该是首选。
示例
使用 EPSG:16031 转换将 WGS 84 经纬度更改为 UTM 31N:
sql
-- 管道以相反方向执行
SQL> SELECT ST_ASTEXT(ST_INVERSETRANSFORMPIPELINE('POINT(426857.9877165967 5427937.523342293)'::GEOMETRY,
'urn:ogc:def:coordinateOperation:EPSG::16031')) AS wgs_geom;
+----------------------------+
| WGS_GEOM |
+----------------------------+
| POINT(2 48.99999999999999) |
+----------------------------+