在实际工作中,我们拿到的是SHP矢量数据,但会遇到有些文本需要填写范围线的拐点坐标值,有些系统需要经度坐标值,不能直接导入SHP文件的情况,具体涉及各种领域都有,其中我遇到的就有需要地理坐标的。
如果我们拿到一个规范的SHP文件,一般是有定义好坐标系的,是投影坐标系或者地理坐标系。如果没有可以定义坐标系,那么可以在ArcMap中加载SHP文件,查看属性里的范围的上、下、左、右来判断是地理坐标还是投影坐标。可以明显看到左右是100+的、上下是几十的那种就是地理坐标了(如图2.1);如果左右的整数部分是8位数,上下的整数部分是7位数,那么就是投影坐标了(如图2.2)。确定坐标类型后做个定义投影即可。
至于怎么提取拐点坐标,在ArcGIS里的做法也是很简单,就是要素折点转点,然后在【添加XY坐标】,最终的效果如下
完了再表转XLS或者直接复制出去编辑成TXT文本或者其他想要的格式即可。水平高的话再做个模型,后期可以重复利用。
具体思路如下:
本文介绍了ArcGIS的方法和FME的方法,习惯哪个用哪个。FME可以结合workspaceruner转换器实现批量处理,ArcGIS的批量处理我还不会,我对ArcPY一无所知。FME的门槛低很多,不需要写代码就能实现批处理。