如何用 ArcGIS API 发布离线卫星地图

2017-8-21 11:36:54 0人评论 795次浏览 分类:技术文章

这里以湖北省荆州市为例说明如何用ArcGIS API发布离线谷歌卫星地图。

万能地图下载器中选择湖北省荆州市的行政区划,然后点击“下载”按钮新建下载任务。


1新建任务.jpg


在新建任务对话框中选择需要下载的级别,一般是从当前行政区划显示的级别开始选择(这里是第9级),一直接选择到第19级(国内19级清晰度效果最佳,19级以上基于19级放大),由于数据量非常大,这里只为了说明如何用ArcGIS API发布离线卫星地图的方法,因此这里以选择到第14级为例。


2选择级别.jpg


在“新建任务”对话框中,点击“导出设置”可以设置相关导出参数,我们可以选择导出大图、导出瓦片和导出离线包等三种方式。由于这里我们用ArcGIS API发布离线卫星地图需要用的是瓦片格式,因此这里选择“导出瓦片”选项。

新建任务详细参数说明,请参阅:

新建地图下载任务参数说明

在“导出瓦片”选项的相关参数中,我们选择瓦片格式为“TMS瓦片”、文件格式为PNG,坐标坐标投影为墨认的“WGS84 Web 墨卡托投影”,选择“边界范围裁剪”,背景颜色为“透明”背景。


3导出设置.jpg


导出瓦片详细参数说明,请参阅:

导出瓦片参数说明

分别点击“确定”按钮开始下载任务,下载并自动导出后可以看到导出的瓦片目录为8到13级而不是我们选择的9到14级,这是因为软件中的级别编号是从1开始,而标准的TMS瓦片命名规则都是从0开始,因此该情况属于正常情况,瓦片的行列号编号规则同理。


4下载结果.jpg


在ArcGIS API发布离线卫星地图的源码示例中,将“arcgis_js_v321_api.zip”解压到当前文件夹。


6解压arcgisapi.jpg


打开解压后文件夹中的“install.html”可以查看ArcGIS API的安装布署说明。


7查看ArcGISAPI安装方法.jpg


ArcGIS API可以在Windows和Linux系统中安装布署,这里我们以Windows为例,点击“Windows”查看布署方法。


8查看Windows中API安装方法.jpg


从ArcGIS API的安装布署说明中可以看到,需要将“\arcgis_js_api\library”文件复制到IIS默认站点下,该操作的目的是要将ArcGIS API放在Web站点中,说明它需要Web服务器支持。


9配置服务器说明.jpg


另外,文档中说明了ArcGIS API有两个版本,一个是普通版,一个是精简版。

现在,我们需要布署一个Web服务器,用于布署ArcGIS API源码。

一般来讲,常用的Web服务器软件工具有IIS、Apache和Tomcat,这里我们以Windows自带的IIS为例。

如何开启IIS 功能,请参阅:

如何在Win10中开启IIS功能

IIS功能开启后,在电脑图标的右键菜单中选择“管理”菜单项。


5系统属性.jpg


在“计算机管理”的功能树列表中点击“服务和应用程序\Internet Information”项,然后在“网站”节点的右键菜单中选择“添加网站”项。


10添加网站.jpg


在显示的“添加网站”对话框中,可以为当前站点指定名称(这里为“WebGIS”),将物理路径设置为ArcGIS API解压后的目录,这里将端口号设置为“8080”,这样不会与访问Web页面的80端口冲突,如果没有布署过80端口的网站则不会有冲突。


11新建站点.jpg


点击新建的Web站点“WebGIS”后,再点击“内容视图”可以查看站点文件。


12查看站点内容.jpg


Web站点布署好之后,我们再回过头来看ArcGIS API的布署说明文档,文档中分别说明了普通版和精简版中都需要对相关文件作修改编辑,这里我们以普通版本为例。


13配置说明提示要改文件.jpg


根据ArcGIS API布署说明文档中的说明,在指定的源码路径中找到init.js文件,并在右键菜单中选择用记事本打开它。


blob.png


按文档中的说明,将“https:/[HOSTNAME_AND_PATH_TO_JSAP]dojo”字符串修改为“https://<myserver>/arcgis_js_api/library/3.21/3.21/dojo”字符串。  

其中的<myserver>表示服务器地址,由于我们这里是以在本机上布署为例,因此它要相应的改为本机地址,即127.0.0.1或localhost,同时需要加上端口号,即最后的替换结果为:

http://127.0.0.1:8080/arcgis_js_api/library/3.21/3.21/dojo  


blob.png


注意:文档中的Web地址头为“https”,如果你的服务器不支持安全加密访问,只需要将地址头改为“http”即可。

编辑修改成完成后,需要测试init.js文件是否可以通过Web地址正常访问。


blob.png


在浏览器中如果打开以下地址显示init.js文件内容,说明布署正确。

http://127.0.0.1:8080/arcgis_js_api/library/3.21/3.21/init.js


blob.png


ArcGIS API安装布署完成后,将ArcGIS API离线地图发布源码示例中的“extlayers”文件夹复制到“arcgis_js_v321_api\arcgis_js_api\library\3.21\3.21”路径下。


18复制exlayer到站点下.jpg


将下载的地图瓦片目录复制到ArcGIS API发布离线地图的源码示例中。


19复制地图瓦片.jpg


用专业的WebGIS开发工具Visual Studio Code打开“arcgis_js_v321_api\arcgis_js_api\library\3.21\3.21\extlayers\gaodelayer.js”文件,将第133行中的“gaodeTiles”字符串修改为当前的瓦片目录名称,即“荆州市谷歌地图TMS瓦片”。


20修改代码.jpg


Visual Studio Code下载安装教程,请参阅:

如何安装WebGIS开发工具Visual Studio Code 

双击ArcGIS API离线地图发布源码中的“map.html”文件,可以在浏览器中打开ArcGIS API发布的离线地图结果。


21打开map.html文件.jpg


在浏览器中打开离线地图发布结果如下图所示。


21显示结果.jpg


在该源码示例中,除了能离线显示谷歌卫星地图外,还包括了基本的地图标注等相关GIS功能。

ArcGIS API for JavaScript在线实例请参阅:

http://api.rivermap.cn/ArcGIS/map.html


附件下载

相关资讯

  • 水经注地图发布服务中件间功能简介

    水经与水经注分别源于中国古代地理名著《水经》和《水经注》。《水经注》共四十卷,作者是北魏晚期的郦道元,因注《水经》而得名。《水经》一书约一万余字,《唐六典注》说其“引天下之水,百三十七”。

    2017-10-23 11:27:20
  • 微图App中如何切换普通标注和专业标注

    《微图App》是《水经微图》的移动端,是作为数据采集和数据云同步必不可少的应用,该APP支持在Android和iOS系统上运行,暂时仅推出了Andriod版,后续会推出iOS版。

    2017-10-20 10:59:52
  • Cesium开源三维地球离线地图发布源码示例功能

    Cesium开源三维地球离线地图发布源码提供了地图切换、查询定位、模型加载、专题图叠加显示和测量功能等,旨在为用户提供一个可以在Cesium快速加载离线地图或在线地图的解决方案,并提供技术支持。

    2017-10-17 11:56:37
  • OpenLayers API 离线地图发布源码示例功能

    OpenLayers API 离线地图发布源码提供了道路交通图的离线加载功能,矢量标注功能、矢量编辑功能和测量功能等,旨在为用户提供一个可以快速加载离线地图或在线地图的解决方案,并提供技术支持。

    2017-10-17 10:51:59

共有访客发表了评论 网友评论

验证码: 看不清楚?