地理转换是将一个地理坐标系中的坐标转换到另一个地理坐标系中。FME软件中预置了大量常用的坐标系统参数。一般FME中预置的的坐标转换参数为目标坐标系统到WGS84,从基准面A转换到基准面B,软件一般执行基准面A -> WGS84 ->基准面 B。 如果我们手中的转换参数直接为基准面A 到基准面B,没有与WGS84之间的转换参数,也就是基准面A ->基准面B,除了使用MYFME中提供的转换器,FME也支持用户自定义地理基准转换,或者更加复杂的基准面A ->基准面B ->基准面C之间转换。
坐标系基础坐标系定义由基准面和地图投影两组参数确定,而基准面的定义则由特定椭球体及其对应的转换参数确定。 基准面是利用特定椭球体对特定地区地球表面的逼近,因此每个国家或地区均有各自的基准面,我们通常称谓的北京54坐标系、西安80坐标系实际上指的是我国的两个大地基准面。 地理坐标系统(Geographic coordinate system),是以经纬度为地图的存储单位的,也称球面坐标 或大地坐标系。包含地球椭球体和大地基准面。 地球是一个不规则的椭球,为了将数据信息科学的放到椭球上,就需要有一个可以量化计算的椭球体,具有长半轴,短半轴,偏心率。然而有了这个椭球体以后还不够,还需要一个大地基准面将这个椭球定位。在坐标系统描述中: Datum: D_Beijing_1954 表示,大地基准面是D_Beijing_1954。有了椭球体和大地基准面两个基本条件,地理坐标系统便可以使用。 以下几行是地理坐标系统相应的参数: Geographic Coordinate System: GCS_Xian_1980//地理坐标系 Datum: D_Xian_1980 //大地基准面 Prime Meridian: Greenwich //起始经度(本初子午线) Angular Unit: Degree//角度单位 投影坐标系统 (Projection coordinate system)平面坐标系统地图单位通常为米 ,也称非地球投影坐标系统 (not earth),或者是平面坐标。投影的条件为 a、球面坐标 b、转化过程(也就是算法) ,即每一个投影坐标系统都必须要求有地理坐标系统(Geographic Coordinate System)参数。 以下是投影坐标系统中的一些参数: Projection: Gauss_Kruger //投影方法 Parameters: //参数 False_Easting: 500000.000000 //在东西方向上坐标纵轴向西移了500km False_Northing: 0.000000 //在南北方向上坐标横轴没有移动 Central_Meridian: 117.000000 //中央经线,同central longitude Scale_Factor: 1.000000 //比例系数 Latitude_Of_Origin: 0.000000 // 纬度的起源,这里即赤道 Linear Unit: Meter (1.000000) //线性单位
添加一个自定义地理转换在我们手中只有一些本地坐标系转换参数情况下,您可以创建一个自定义地理转换模型。转换定义可能发生在FME映射文件中,也可以在<FME_Install_Dir>/Reproject/MyCoordSysDefs.fme文件中. 单步转换语法XFORM_DEF <xformName> \ SRC_DTM <datum name> \ TRG_DTM <datum name> \ [DESC_NM <descriptive name>] \ [SOURCE <source>] \ [GROUP <group>] \ [EPSG_NBR <epsg #>] \ [INVERSE <yes|no>] \ [MAX_ITR <max iterations for inverse convergence>] \ [CNVRG_VAL <inverse convergence threshold for completion>] \ [ERROR_VAL <inverse convergence threshold for error reporting>] \ [EPSG_VAR <0-32767>] \ [MIN_LNG <longitude>] \ [MAX_LNG <longitude>] \ [MIN_LAT <latitude>] \ [MAX_LAT <latitude>] \ METHOD <transformation method> \ [DELTA_X <x translation>] \ [DELTA_Y <y translation>] \ [DELTA_Z <z translation>] \ [ROT_X <x rotation>] \ [ROT_Y <y rotation>] \ [ROT_Z <z rotation>] \ [BWSCALE <scale>] \ 多步转换语法可以实现基准面A ->基准面B ->基准面C的转换 PATH_DEF <pathName> \ [SRC_DTM <datum name>] \ [TRG_DTM <datum name>] \ [DESC_NM <descriptive name>] \ [SOURCE <source>] \ [GROUP <group>] \ [ACCURACY <0-1000>] \ [XFORM <xformName>,<direction>]+ 转换参数定义名称 范围 说明 可选 默认
XFORM_DEF CS-Map标识符名称 描述为 <FME_Install_Dir>/Reproject/MyCoordSysDefs.fme 定义的单步转换的名称 否
PATH_DEF CS-Map标识符名称 描述为 <FME_Install_Dir>/Reproject/MyCoordSysDefs.fme 定义的多步转换的名称 否
SRC_DTM 基准名称 源基准的名称 如果省略了路径,这一转换是不会自动选择的。 XFORM: No PATH: Yes
TRG_DTM 基准名称 目标基准的名称 如果省略了路径,这一转换是不会自动选择的。 XFORM: No PATH: Yes
DESC_NM 字符串 对转换的一个描述性名称 是
SOURCE 字符串 提供转换参数的个人或机构。 是
GROUP 字符串 Workbench中地理转换库中的组 是
INVERSE Yes/No 如果是,转换可以逆向运行 (TRG_DTM -> SRC_DTM) 是 是
MAX_ITR 整数大于或等于零 最大数量的迭代试图运行转换时逆转,在2 d中。 是 8
CNVRG_VAL 浮点值 收敛阈值:2D逆向转换在真正的答案的区间内,迭代停止。 是 1.0E-09
ERROR_VAL 浮点数 错误阈值:迭代阈值后,当一个逆转2 d转换不符合CNVRG_VAL MAX_ITR,结果被认为是可以接受的,只要它比ERROR_VAL更接近。 是 1.0E- 06
METHOD 参考地理转换。 将被应用的转换方法. 否
DELTA_X 浮点值 该数值由中间地心X坐标转换而来。单位为米,并以按数值的标记实行转换方向。只应用到某些METHODs. 是 0
DELTA_Y 浮点值 该数值由中间地心Y坐标转换而来。单位为米,并以按数值的标记实行转换方向。只应用到某些METHODs. 是 0
DELTA_Z 浮点值 该数值由中间地心Z坐标转换而来。单位为米,并以按数值的标记实行转换方向。只应用到某些METHODs. 是 0
ROT_X 浮点值 X轴旋转角度,数值以秒为单位,并以数值标志表示旋转的方向。只应用到某些METHODs. 是 0
ROT_Y 浮点值 Y轴旋转角度,数值以秒为单位,并以数值标志表示旋转的方向。只应用到某些METHODs. 是 0
ROT_Z 浮点值 Z轴旋转角度,数值以秒为单位,并以数值标志表示旋转的方向。只应用到某些METHODs. 是 0
BWSCALE 浮点值 比例因子,比例系数应用于中介地心坐标。该值为百万分之一,是比例系数和实体的实际差异。只应用到某些METHODs. 是 0
XFORM <Single-step transformation name>,<fwd|inv> 路径定义需要列出至少一个单步转换。转换按顺序和列出的方向进行应用. 否
例如:  
新建立的转换模型可以在FME->工具->浏览地理转换器内查看 
注:我们可以通过以上方法定义地理转换参数,也可以自定义椭球和基准面后,在fme desktop中使用MYFME提供的7PReprojector等转换器实现坐标转换。 本文转载来自CSDN作者:fmechina 版权归作者所有 原文链接:https://blog.csdn.net/fmechina/article/details/110229661
|