管道运营商¶
5.0.0 新版功能.
通过顺序管道中的菊花链操作构造复杂的操作。
Alias |
管道 |
Domain |
2D、3D和4D |
输入类型 |
任何 |
输出类型 |
任何 |
备注
请参见 大地变换 更深入地介绍项目中转换管道的概念。
通过管道操作,可以在同一输入数据上依次执行多个操作。此功能使创建由多个操作组成的变换成为可能,例如,执行基准移动,然后应用适当的地图投影。理论上,两个坐标参考系之间的任何转换都可以使用管道操作来执行,前提是项目中每个步骤都有必要的坐标操作。
管道由许多步骤组成,每个步骤本身就是一个协调操作。通过依次连接这些单独的步骤,我们最终得到一个串联的坐标操作。例如,将GRS80椭球体上的大地坐标转换为已交换东西轴和东北轴的投影系统:
+proj=pipeline +ellps=GRS80 +step +proj=merc +step +proj=axisswap +order=2,1
这里的第一步是应用 墨卡托 第二步是应用 轴交换 转换。请注意 +ellps=GRS80 在第一次出现之前指定 +step . 这意味着在两个步骤中都使用GRS80椭球体,因为在第一次出现 +step 作为全局参数处理,并传递到每个单独的步骤。
管道规则¶
1管道必须至少包含一个步骤。
+proj=pipeline
将导致错误。
2.只有在init文件中定义了嵌套管道时,才能嵌套管道。
+proj=pipeline
+step +proj=pipeline +step +proj=merc +step +proj=axisswap +order=2,1
+step +proj=unitconvert +xy_in=m +xy_out=us-ft
导致错误,而
+proj=pipeline
+step +init=predefined_pipelines:projectandswap
+step +proj=unitconvert +xy_in=m +xy_out=us-ft
没有。
三。没有正向路径的管道无法建造。
+proj=pipeline +step +inv +proj=urm5
将导致一个错误,因为 乌尔马耶夫 没有定义逆运算。
4. Parameters added before the first `+step` are global and will be applied to all steps.
在下文中,GRS80椭球体将应用于所有步骤。
+proj=pipeline +ellps=GRS80
+step +proj=cart
+step +proj=helmert +x=10 +y=3 +z=1
+step +proj=cart +inv
+step +proj=merc
5步骤之间的操作单元必须匹配。
5.1.0 新版功能.
阶跃的输出单位 n 必须与步骤的预期输入单位匹配 n+1 . E、 例如,不能将输出投影坐标的操作传递给需要角度单位(度)的操作。下面显示了这种单元不匹配的示例。
+proj=pipeline
+step +proj=merc # Mercator outputs projected coordinates
+step +proj=robin # The Robinson projection expects angular input
参数¶
要求的¶
- +step¶
将管道中的每个步骤分开。
可选的¶
- +inv¶
反转管道中的步骤。
- +omit_fwd¶
6.3.0 新版功能.
在前进路径中跟随管道的某个步骤时跳过该步骤。
下面的示例显示了 push 和 pop 操作员,带
omit_fwd
和omit_inv
选项,以实现必须在不同于输入和输出中使用的水平CRS的插值CRS中进行的垂直调整。+在正向路径中省略u fwd可避免无用的水平反变换,并依赖pop运算符恢复初始水平坐标。+当管道反向执行时,省略inv也有类似的作用+proj=pipeline +step +proj=unitconvert +xy_in=deg +xy_out=rad +step +proj=push +v_1 +v_2 +step +proj=hgridshift +grids=nvhpgn.gsb +omit_inv +step +proj=vgridshift +grids=g1999u05.gtx +multiplier=1 +step +inv +proj=hgridshift +grids=nvhpgn.gsb +omit_fwd +step +proj=pop +v_1 +v_2 +step +proj=unitconvert +xy_in=rad +xy_out=deg
- +omit_inv¶
6.3.0 新版功能.
在反向路径中跟随管道的某个步骤时跳过该步骤。