首页 > 代码库 > 在Arcmap中加载互联网地图资源的4种方法

在Arcmap中加载互联网地图资源的4种方法

前一段时间想在Arcmap中打开互联网地图中的地图数据,如影像数据、基础地图数据等,经过简单研究目前总结了四种方法,整理下与大家分享,有些内容可能理解有误,希望大家多多指教。4种方法如下:

a)        如果地图支持OGC(开放地理空间信息联盟)协议的话,可以通过WMS,WMTS服务资源在Arcmap中打开,如天地图等。

b)        通过相关插件打开。如使用ArcBruTile插件等可以在arcmap中打开如Google map,openstreet,必应地图,百度地图等。

c)        通过ArGIS自带的ArGIS online打开地图资源。

d)        通过一些地图下载器,先下载离线地图然后再在arcmap中打开。

1、 通过OGC协议打开地图资源

      利用OGC规范中的wms、wmts协议,打开一些网络地图数据,目前天地图实现了OGC标准协议,可以利用天地图提供的wms、wmts资源,在支持OGC服务规范的GIS软件中打开,如超图、 uDIG等,也包括Arcmap。

1.1天地图数据资源

天地图WMTS资源,包括:地图、影像、地形,如下:

网址链接:http://www.tianditu.com/guide/index.html

天地图WMS资源

天地图影像地址:

http://www.scgis.net.cn/imap/iMapServer/defaultRest/services/newtianditudom/WMS

天地图影像注记地址:

http://www.scgis.net.cn/imap/iMapServer/defaultRest/services/newtianditudom_scann/WMS

1.2其他OGC数据服务地址

1、http://demo.cubewerx.com/demo/cubeserv/cubeserv.cgi? 不同类型的数据图层的源(例如边界、地形、地文、公用设施、SRTM等)

2、http://www2.dmsolutions.ca/cgi-bin/mswms_gmap 各种加拿大的要素(省的边界、湖泊、铁路等)。

3、http://maps.customweather.com/image(气象数据)

4、http://www.ga.gov.au/bin/getmap.pl?dataset=national&amp(澳大利亚地球科学局国家地质科学数据集)

5、http://gis.sinica.edu.tw/tileserver/wmts(台湾百年历史地图WMTS服务网址)

6、http://maps.nlsc.gov.tw/S_Maps/wmts(台湾国土测绘图资网络地图WMTS服务)

1.3在Arcmap中打开的详细方法如下:

以下操作都在10.1版本下进行

1.3.1在Arcmap中打开WMS资源

1.打开ArcMap,在工具栏中选择目录窗口(9.3版本就是打开ArcCatalog,用ArcCatalog的界面操作)

2.在ArcMap的右边会弹出如下图的界面.

3.双击添加WMS服务器,弹出如图所示的对话框,在URL中输入

http://www.scgis.net.cn/imap/iMapServer/defaultRest/services/newtianditudom/WMS,然后点击获取图层,会出现“聚合天地图DOM瓦片地图服务”,选择“Layers”下面的“聚合天地图DOM瓦片地图服务”,点击“确定”

4.在右边的“GIS服务器”下面会多出一个栏目,如图,将红色框中信息拖到ArcMap的左边图层列表中。

 

1.3.2在Arcmap中打开WMTS资源

目前Aarcgis中只有10.1版的支持添加WMTS服务,也可以通过其他支持OGC服务的GIS 平台打开WMTS服务。

1.打开ArcMap,在工具栏中选择目录窗口

2.在ArcMap的右边会弹出如下图的界面.

3.双击添加WMTS服务器,弹出如图所示的对话框,在URL中输入

http://www.scgis.net.cn/imap/iMapServer/defaultRest/services/newtianditudom/WMTS,然后点击获取图层,会出现“聚合天地图DOM瓦片地图服务”,选择“Layers”下面的“聚合天地图DOM瓦片地图服务”,点击“确定”

4、其他步骤同打开WMS一样。

2、通过相关插件打开

      对于Google地图、必应地图,百度地图、搜狗地图等,我没有找到其OGC的地图调用地址,或许这些地图目前不支持OGC接口。但是他们有公开的API接口,通过这些API接口,可以调用其地图资源。

1、外国大牛通过这些互联网地图API接口编写相应的应用插件工具ArcBruTile,这个工具集成到arcmap中,就可以打开相应的地图资源了。一些技术大牛已对此做过研究,详见:http://hi.baidu.com/gislt/item/24d0c9ada1c598a729ce9d34,ArcBruTile的下载网址:http://arcbrutile.codeplex.com/,目前最新版本是ArcBruTile_0.3.4,ArcBruTile_0.3.4目前只能打开必应地图和openstreetmap,早期版本可以打开google地图。

2、方法与上一节类似,国内牛人A在ArcBruTile中集成了可以打开百度地图的功能: ArcBruTileBaidu。详见:http://blog.sina.com.cn/s/blog_4c8b1bdd01013j8c.html,但是这个插件,我在arcgis 10.1中无法正常安装。

3、国内牛人B,制作了一个类似的插件ArcTiler,Arcmap中可以打开Google地图、soso地图。详见:http://www.eiafans.com/thread-500383-1-1.html。下载地址:http://www.arctiler.com/download.html。1.5版本以后需要付费:太乐地图arcmap插件。

这类工具的缺点是,在arcmap的左栏的table of contents中无法控制图层。

3、通过ArGIS online打开地图资源

      最简单的方法是,通过Arcmap自带的ArGIS online打开地图资源,我目前使用的arcgis 10.1,在10.1中esri集成了ArGIS online,ArGIS online可以在Arcmap中打开google地图、必应地图及esri和网友共享的各种地图数据。

 

4、通过一些地图下载器,先下载离线地图然后再在Arcmap中打开。

      有很多高手制作了一些软件,可以批量下载网络地图数据,并且可以自动拼接,而且带坐标信息,下载离线地图后就可以通过Arcmap中打开。比如:稻歌、GogoMap(狗狗地球)、太乐地图、水经注软件等,但是这些软件要收费。