ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

时间:2022-12-30 23:41:45

大家好,这次来分享干货。做地理分析的同学,或者需要使用地图却不知道哪里有矢量数据的时候,怎么办呢?

这次,我就告诉大家哪里能自己手工制作矢量点线面数据!注意哦,是自己绘制的。

 

使用到的软件:

  1. ArcGIS Earth 1.5
  2. ArcGIS Desktop - ArcMap

需要预备的知识:

  1. 知道什么是kml文件,什么是kmz文件;
  2. 知道什么是shp文件,什么是地理数据库;
  3. 知道如何用ArcMap矢量化地图;

————————分割线————————

1. 下载安装 ArcGIS Earth 1.5

给地址https://go.pardot.com/l/82202/2015-12-07/nv11n,要填邮箱和身份,随便填都可以。安装包大概60MB,装就是了,这一步没什么难度。

如果网址不能访问,就访问这个网站,拉到最下面找到下载按钮:http://www.esri.com/software/arcgis-earth

安装完成,打开会提示登陆ESRI账户,可以忽略,也可以自己注册账号登录。别担心是全英文的软件界面,我会告诉大家怎么操作。

2. 打开ArcGIS Earth,设置坐标系和添加影像图数据

2.1 添加影像数据

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

如上所示操作,点击+号键,稍等大概1分钟,就添加好了。(熟悉ArcGIS Server服务的同学肯定知道,这些就是Server上的各种乱七八糟的服务)

在图层列表可以看到此数据:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

如果经常要用这张图,不妨在这里添加“Basemap”,和上面添加数据是一样的步骤。

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

这个数据源在大城市的比较新,几乎是近两年或者就是当前年份的影像。

我们定位到武汉大学,方便举例绘制。(什么?你不懂定位?右上角搜索按钮啊,指北针还可以摆正地图,右键拖拽可以摆动视角的倾角)

一般来说,如果配合VPN,加载地图速度会更快哦。

2.1 设置坐标系

GIS行业外的人一般会用经纬度(GCS),而行业内的人比较喜欢用投影坐标系(PCS)。在这里,ArcGIS Earth提供了两种坐标系统:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

如上图,我是GIS行业内的,所以比较常用WGS 84坐标系统。如果是百度地图、高德地图等用户,我想他们更喜欢下面的Web Mercator(网络墨卡托)坐标系。

设置完坐标系后,我还会改经纬度为“米”,因为米量测长度的时候更为真实。

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

点击OK,重启软件即可。

3. 绘制点线面

以画面为例:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

打开绘制窗口,给即将画的多边形命个名:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

在View选项卡,点击Snapshot current view,可以设置这个多边形的参数,建议点一下:

 ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

设置好了,就打叉,好了,鼠标就可以在图上绘制图斑了:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

画完就双击,我们画两个,图层列表就会有两个多边形:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

这个时候,就可以关掉编辑窗口了。我们右键单击My Drawing这个文件夹,选择Save as:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

存起来,存左kmz格式。这个时候如果不再画,ArcGIS Earth可以关掉了。注意关闭是不会保存画图的哦。

4. 转为要素/shp

4.1 从kmz文件中提取kml文件

本质上shp和要素是差不多的,都是空间数据。

我以shp为例。

找到我们上一步导出的kmz文件,改其拓展名为“zip”,用压缩软件打开它,把里头的kml文件解压出来:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

解压出来是这样的:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

4.2 kml转图层文件(*.lyr)

好了,打开ArcMap中的“KML转图层”工具,直接将kml转成lyr格式的文件:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

默认会添加到地图上:

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

刚刚的命名就是一个要素的名称,这个时候,这个图层上的要素是GCS_WGS_1984坐标系的,是GCS坐标系,如果需要投影的同学请到工具箱找投影工具进行投影。

4.3 lyr转shp文件

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

右键导出即可~

ArcGIS Earth 如何获取高精度矢量地图数据?(shp文件/要素类/kml)

大功告成,点线也可以这么操作。

说说缺点和优点

有的同学可能知道ArcBruTile这个ArcMap插件,可以直接调用各种地图,那样也可以,不过那个好像不支持谷歌地图了,但是好像对国内的百度和高德地图支持了——但是,但是我没成功地加载出来...同学们可以自行对比使用,毕竟数据源多了也可以的不是吗~而且这个出来就是通用的WGS84坐标系的。

这个唯一的优点就是可以使用ArcGIS Server的各种服务了吧...而且还免费,就是可能数据访问可能比较慢~

缺点很明显,就是导出导入数据的过程比较繁琐,但是官方缩了,1.6版本的ArcGIS Earth可能会支持更多的功能和数据格式,届时我会更新的。

就这样!