怎样基于谷歌地图的Server缓存公布Image Service服务

怎样基于谷歌地图的Server缓存公布Image Service服务
第一步:下载地图数据


下载安装水经注万能地图下载器,启动时仅仅选择电子.谷歌(这里能够依据自己的须要选择)。例如以下图所看到的。





找到成都后框选下载成都区域,例如以下图所看到的。




双击新建任务,选择1到19级,例如以下图所看到的。





第二步:导出 ArcGIS Server 服务


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



在该对话框中选择导出类型为“瓦片:ArcGIS Server”。保存路径为“c:arcgisserverdirectoriesarcgiscache”;保存类型为“PNG(*.png)”,最后点击“输出”button開始导出数据,结果例如以下图所看到的。





须要说明的是,假设瓦片数量特别多(如100万张以上)。在导出时就要选择导出到ArcGIS的缓存文件夹(如“c:arcgisserverdirectoriesarcgiscache”)以方便使用。


第三步:导出暂时数据


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




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



导出结果例如以下图所看到的。



为了便于差别于之前的导出结果,这里我们把“成都_ArcgisServerTiles”目录改为“成都_Temp”。例如以下图所看到的。



第四步:新建Image Services服务
启动ArcCatalog 10.2,在“Folder Connections”文件夹上单击右键并选择“Connect To Folder...”菜单,例如以下图所看到的。



在文件夹树中选择“D:SGDownload”文件夹(即暂时数据存放的文件夹)并点击“确定”button完毕选择,例如以下图所看到的。



以上设置完毕后。“成都_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”button。将開始将数据拷贝到server并进行打包处理。假设数据量大。这个过程会很花时间,这就是我们之前仅仅选择少量数据的重要原因。



处理完毕后,提示公布成功,点击“OK”button能够关闭提示,例如以下图所看到的。




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



同一时候。在ArcGIS缓存文件夹“C:arcgisserverdirectoriesarcgiscache”也会生成“成都_ImageServer”缓存文件夹。例如以下图所看到的。



但我们打开文件夹后。会发现文件是紧凑型的缓存文件,理论上这种文件对訪问速度是有优点的。但对于有上100万张的瓦片打包的话,须要花时间太久。据用户反映有时还会报错。且最后在client呈现的效果也不太理想。





第五步:偷梁换柱

为了解决第四步中出现的问题,我们把生成的缓存替换为我们第一次导出的1-19级的所有数据。


在影像服务“成都”上单击右键,选择“stop”停止服务。





将缓存文件夹中的“成都_ImageServer”文件夹改为“成都_ImageServer_2”(也能够改为其他随意名字,也能够删除该文件夹);然后将“成都_ArcgisServerTiles”改为“成都_ImageServer”,例如以下图所看到的。





目录改名完毕后,又一次启动该服务。例如以下图所看到的。



为了完整显示全部级别的数据。我们须要又一次设置一下须要显示的级别范围。在影像服务上单击右键选择“Service Properties...”。例如以下图所看到的。





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




点击“OK”button完毕设置并生效。


第六步:查看结果


在浏览器中打开管理器,例如以下图所看到的。




输入username称password登录后,例如以下图所看到的。




点击“成都”影像服务,能够随意查看地图数据了,例如以下图所看到的。





小结:
记得在9.3版本号的ArcCalalog中能够直接新建Image Service,并指定下载器导出的ArcGIS Server缓存就可以实现Image Service的公布,但在10.0以上的版本号中没有找到该功能,经过一天的摸索測试,终于採用了偷梁换柱的方式才得以实现。即用一个比較小的数据高速建立一个Image Service,然后再将该服务所相应的缓存数据替换为须要公布的海量数据。假设大家有更好的方法,欢迎交流指正!
原文地址:https://www.cnblogs.com/mfrbuaa/p/5148157.html