详解:ArcGIS中如何实现矢量数据平移

ArcGIS中实现数据平移可采用如下办法(后续发现新方法,会继续更新):
(1) 使用move工具
(2) 使用“project”工具实现平移
(3) 使用“spatial ETL”工具实现平移

方法一:

Move适用小数据量的平移,如果数据量大的话,容易出现运行时间过长或者直接导致ArcMap崩溃。

操作流程:打开编辑,选中需要移动的要素类,点击编辑器下的move,在Delta xy中输出需要移动的数值;这些坐标使用地图单位进行测量,如果是投影坐标系,以米为单位输入需要偏移的数值。

 

可参考帮助:
Moving a feature relative to its current location (delta x,y)—Help | ArcGIS Desktop
点击打开链接

方法二:
使用“project”工具实现平移的原理就是通过相同的椭球、相同的投影方法、东偏移和北偏移的参数不一样,从而实现数据平移。

需求:现有一个地理坐标系的shapefile文件,所在的投影坐标系是CGCS2000_GK_CM_111E;原始数据有上百万条记录;想将此数据向东平移1000m,向南平移500m。

分析:上百万条记录,如果使用move实现平移时间长,难以实现需求。选择方法二实现。

操作流程:
1) 确定原始数据坐标系的类型
如果我们拿到的数据是地理坐标系,需要使用工具project将其转换为投影坐标系(数据实际所在的投影坐标),测试数据所属投影坐标系为CGCS2000_GK_CM_111E。如果数据本身就是投影坐标系,那么直接从步骤二开始。
 

2) 建立自定义坐标系,设置偏移系数。
在数据框属性中,找到CGCS2000_GK_CM_111E,右键点击copy and modify,重命名坐标系名称为CGCS2000_GK_CM_111E_move,将False_Easting设置为501000(向东平移1000m),False_Northing设为-500(向南平移500m),其余的保持不变。设置如下:

 
点击确定后,在custom中就出现了我们刚才所建立的坐标系,右键可将其另存为磁盘上,以.prj为后缀。
 

3) 使用project工具,将原始数据投影坐标系转换为自定义投影坐标系,实现数据的偏移。
生成的数据命名为:DK_Project_Projectmove
 

4) 将转换后的坐标重新定义回原始投影坐标,使用define project


 

平移结果如图:

方法三:

ArcGIS数据互操作模块中提供给了一个Offsetter函数,使用“spatial ETL”工具实现平移非常方便。

1)在 my toolboxs上新建一个工具箱,在工具箱上右键,新建spatial ETL tool,输入reader和writer数据路径。

添加Offsetter函数,设置x,y的Offset即可。如下图所示。

 

转载自:https://blog.csdn.net/zglybl/article/details/73294714

You may also like...