提取SHP格式文件折点(拐点)地理坐标(经纬度)

一、任务概况

        在实际工作中,我们拿到的是SHP矢量数据,但会遇到有些文本需要填写范围线的拐点坐标值,有些系统需要经度坐标值,不能直接导入SHP文件的情况,具体涉及各种领域都有,其中我遇到的就有需要地理坐标的。

二、问题分析

        如果我们拿到一个规范的SHP文件,一般是有定义好坐标系的,是投影坐标系或者地理坐标系。如果没有可以定义坐标系,那么可以在ArcMap中加载SHP文件,查看属性里的范围的上、下、左、右来判断是地理坐标还是投影坐标。可以明显看到左右是100+的、上下是几十的那种就是地理坐标了(如图2.1);如果左右的整数部分是8位数,上下的整数部分是7位数,那么就是投影坐标了(如图2.2)。确定坐标类型后做个定义投影即可。

提取SHP格式文件折点(拐点)地理坐标(经纬度)_第1张图片 图 2.1 提取SHP格式文件折点(拐点)地理坐标(经纬度)_第2张图片 图 2.2

 三、解决方案

        (一)、ArcGIS方法

        至于怎么提取拐点坐标,在ArcGIS里的做法也是很简单,就是要素折点转点,然后在【添加XY坐标】,最终的效果如下

提取SHP格式文件折点(拐点)地理坐标(经纬度)_第3张图片

 完了再表转XLS或者直接复制出去编辑成TXT文本或者其他想要的格式即可。水平高的话再做个模型,后期可以重复利用。


(二)、FME模板方法

具体思路如下:

  1. 把读入shp文件的坐标系统暴露到属性里去(前提是shp文件一定已经有定义坐标系)
  2. 如果过是投影坐标先做个投影转换成地理坐标,如果是地理坐标就直接进入下一步。(因为本次模板的目标是生成拐点的地理坐标)。
  3. 暴露坐标到列表,再暴露列表到属性。
  4. 把XY合并到一个属性中去。
  5. 重命名存有XY坐标的属性名称,以便写入TXT文本(因为TXT只接收属性名称为text_line_data的内容)。

四、任务小结

        本文介绍了ArcGIS的方法和FME的方法,习惯哪个用哪个。FME可以结合workspaceruner转换器实现批量处理,ArcGIS的批量处理我还不会,我对ArcPY一无所知。FME的门槛低很多,不需要写代码就能实现批处理。

提取SHP格式文件折点(拐点)地理坐标(经纬度)_第4张图片 本文FME模板整体

        

你可能感兴趣的:(FME相关,arcgis,FME,SHP,提取拐点坐标)