如何基于谷歌地图的Server缓存发布Image Services服务!

2016-7-21 14:53:18 0人评论 451次浏览 分类:技术文章

附件下载:
 如何基于谷歌地图的Server缓存发布Image Service服务.rar (2.88 MB) 

第一步:下载地图数据

下载安装水经万能地图下载器,启动时只选择电子.谷歌(这里可以根据自己的需要选择),如下图所示。



找到成都后框选下载成都区域,如下图所示。



双击新建任务,选择1到19级,如下图所示。



第二步:导出 ArcGIS Server 服务


下载完成后,询问是否导出,点击选择“是”;然后在列表的任务例表中选择“成都”,再点击“确定”显示“导出图片数据”对话框,如下图所示。



在该对话框中选择导出类型为“瓦片:ArcGIS Server”;保存路径为“c:\arcgisserver\directories\arcgiscache”;保存类型为“PNG(*.png)”,最后点击“输出”按钮开始导出数据,结果如下图所示。



需要说明的是,如果瓦片数量特别多(如100万张以上),在导出时就要选择导出到ArcGIS的缓存目录(如“c:\arcgisserver\directories\arcgiscache”)以方便使用。


第三步:导出临时数据

导出临时数据的目的在于快速构建一个Image Server服务,它的用途在后面会详细讲述。
在下载器中选择之前下载的任务,然后在“查看下载结果”区域点击“导出拼接图片”工具,如下图所示。




这里只需要选择几个较小的级别即可,数据越少越好;另外,需要特别注意的是保存路径一定要修改一下,要确保与之前的路径不同,以避免配置文件被覆盖,如下图所示。



导出结果如下图所示。



为了便于区别于之前的导出结果,这里我们把“成都_ArcgisServerTiles”文件夹改为“成都_Temp”,如下图所示。



第四步:新建Image Services服务

启动ArcCatalog 10.2,在“Folder Connections”目录上单击右键并选择“Connect To Folder...”菜单,如下图所示。



在目录树中选择“D:\SGDownload”目录(即临时数据存放的目录)并点击“确定”按钮完成选择,如下图所示。



以上设置完成后,“成都_Temp”将在树中显示,如下图所示。



在“成都_Temp”上单击鼠标右键,并在菜单中选择“Share As Image Service...”,将显示如下图所示对话框。



点击“下一步”,将影像服务的名称改为“成都”,如下图所示。




再点击“Continue”,如下图所示。



在显示的“Service Editor”对话框中分别选择“Caching”选项中的“Using tiles from a cache”和“ArcGIS Online/Bing Maps/Google Maps”参数,如下图所示。



然后,点击右上角的“Publish”发布,将显“Copying Data to Server”对话框,如下图所示。



点击“OK”按钮,将开始将数据复制到服务器并进行打包处理,如果数据量大,这个过程会非常花时间,这就是我们之前只选择少量数据的重要原因。



处理完成后,提示发布成功,点击“OK”按钮可以关闭提示,如下图所示。



这里我们将看到一个名叫“成都”的Image Service影像服务,如下图所示。



同时,在ArcGIS缓存目录“C:\arcgisserver\directories\arcgiscache”也会生成“成都_ImageServer”缓存目录,如下图所示。



但我们打开目录后,会发现文件是紧凑型的缓存文件,理论上这样的文件对访问速度是有好处的,但对于有上100万张的瓦片打包的话,需要花时间太久,据用户反映有时还会报错,且最后在客户端呈现的效果也不太理想。



第五步:偷梁换柱

为了解决第四步中出现的问题,我们把生成的缓存替换为我们第一次导出的1-19级的全部数据。
在影像服务“成都”上单击右键,选择“stop”停止服务。



将缓存目录中的“成都_ImageServer”文件夹改为“成都_ImageServer_2”(也可以改为其它任意名字,也可以删除该目录);然后将“成都_ArcgisServerTiles”改为“成都_ImageServer”,如下图所示。



文件夹改名完成后,重新启动该服务,如下图所示。



为了完整显示所有级别的数据,我们需要重新设置一下需要显示的级别范围。在影像服务上单击右键选择“Service Properties...”,如下图所示。



在显示的“Service Editor”对话框中,拉动级别滑块,将显示级别设置为0到18,即对应下载器中的1到19级。




点击“OK”按钮完成设置并生效。

第六步:查看结果

在浏览器中打开管理器,如下图所示。



输入用户名称密码登录后,如下图所示。



点击“成都”影像服务,可以任意查看地图数据了,如下图所示。



小结:
记得在9.3版本的ArcCalalog中可以直接新建Image Service,并指定下载器导出的ArcGIS Server缓存即可实现Image Service的发布,但在10.0以上的版本中没有找到该功能,经过一天的摸索测试,最终采用了偷梁换柱的方式才得以实现,即用一个比较小的数据快速建立一个Image Service,然后再将该服务所对应的缓存数据替换为需要发布的海量数据。如果大家有更好的方法,欢迎交流指正!

附件下载

相关资讯

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

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

    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

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

验证码: 看不清楚?