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

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


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





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




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





第二步:导出 ArcGIS Server 服务

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



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





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

第三步:导出暂时数据


导出暂时数据的目的在于高速构建一个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:\arcgisserver\directories\arcgiscache”也会生成“成都_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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/272423.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

整理的一些比较基础的面试知识点

1、面向对象的三大特性或其具体体现在哪 2、页面间传值方式 3、session cookie原理及区别 4、hasstable,dictionary,List ,collection 5、类和抽象类,类和接口,接口和抽象类区别及适合场景 6、Get和Post比较优缺点或区…

五种类型的程序员,你属于哪一种?

在我的编程生涯中,我碰到过很多奇奇怪怪的对手和同盟。我把这些编码战士们分成五类,有些人是你队伍中的好伙伴,有些人则是捣蛋者,让你的每一个计划都完不成。不管怎么说,他们在软件开发的诸神殿上都占有一席之地。如果你的团队中没…

一些有用的js插件

getfuelux.com 一系列插件合集 Ion.RangeSlider 超级牛的范围选择控件 Ion.CheckRadio Ion.Tabs Ion.Calendar Ion.ImageSlider Ion.Zoom www.ngwidgets.com Advanced UI Widgets for AngularJS http://www.jq22.com/ jQuery 插件库 http://jvectormap.com/ 地图插件 X-…

C# FTP操作类库

class FTP_Class{string ftpServerIP;string ftpUserID;string ftpPassword;FtpWebRequest reqFTP; #region 连接/// <summary>/// 连接FtpWebRequest/// </summary>/// <param name"path"></param>private void Connect(String path)/…

安装并配置ROS环境

参考该网址内容&#xff1a;http://wiki.ros.org/cn/ROS/Tutorials/InstallingandConfiguringROSEnvironment

Cropper – 简单的 jQuery 图片裁剪插件

Cropper 是一个简单的 jQuery 图像裁剪插件。它支持选项&#xff0c;方法&#xff0c;事件&#xff0c;触摸&#xff08;移动&#xff09;&#xff0c;缩放&#xff0c;旋转。输出的裁剪数据基于原始图像大小&#xff0c;这样你就可以用它们来直接裁剪图像。 如果你尝试裁剪跨域…

C# JSON格式数据用法

JSON简介JSON(全称为JavaScript ObjectNotation) 是一种轻量级的数据交换格式。它是基于JavaScript语法标准的一个子集。JSON采用完全独立于语言的文本格式&#xff0c;可以很容易在各种网络、平台和程序之间传输。JSON的语法很简单&#xff0c;易于人阅读和编写&#xff0c;同…

Ros命令及功能

运行小乌龟代码&#xff1a; roscore rosrun turtlesim turtlesim_node rosrun turtlesim turtle_teleop_key一些命令及作用 ros 加tap //查看电脑中以ros开头的命令 rqt_graph //将系统内的主要资源以可视化的形式展现出来 rosnode list //列出系统节点 命令 --help //查看命…

数据库——环境初建改端口和密码(转)

一、修改APACHE的监听端口 2、在界面中选apache&#xff0c;弹出隐藏菜单选项&#xff0c;打开配置文件httpd.conf; 2、找到Listen 80 和 ServerName localhost:80; 3、将80改成801&#xff08;当然自己也可以设定别的不使用的端口&#xff0c;例如8000等&#xff09;; 4、保存…

文件系统认知

什么是文件系统 常规认知是&#xff1a;linux根目录那些东西 百科&#xff1a;文件系统是操作系统用于明确存储设备组织文件的方法&#xff0c;操作系统中负责管理和存储文件信息的软件机构称为文件管理系统&#xff0c;简称文件系统。 以上说的方法&#xff1a;就是文件管理…

寒哥细谈之AutoLayout全解

看到群中好多朋友还停留在Frame布局的痛苦时代&#xff0c;以及有些开发者接手别人的就项目发现布局一团乱。而且没有启动图的时候并不是真正真正适配iPhone 6(S)、iPhone6(S) Plus等设备 。寒哥准备尽可能详细的讲一讲我所掌握的AutoLayout 。AutoLayout很难&#xff1f;我觉得…

最难学的5种编程语言排行

每个程序员都熟悉许多编程语言。许多编程语言都是高级的&#xff0c;它们的语法是人类可读的。然而&#xff0c;也有一些低级语言&#xff0c;对于一个人来说&#xff0c;读起来很困难&#xff0c;但是可以理解。然而&#xff0c;您是否遇到过一种既不可读又不可理解的编程语言…

[小北De编程手记] : Lesson 02 - Selenium For C# 之 核心对象

从这一篇开始&#xff0c;开始正式的介绍Selenium 以及相关的组件&#xff0c;本文的将讨论如下问题&#xff1a; Selenium基本的概念以及在企业化测试框架中的位置Selenium核心对象&#xff08;浏览器驱动&#xff09; Web DriverSelenium核心对象&#xff08;Dom元素&#xf…

Java中HashMap的entrySet()你会用了吗

Map中存放的元素均为键值对&#xff0c;故每一个键值对必然存在一个映射关系。 Map中采用Entry内部类来表示一个映射项&#xff0c;映射项包含Key和Value Map.Entry里面包含getKey()和getValue()方法 Set<Entry<T,V>> entrySet() 该方法返回值就是这个map中各个键…

JS获取请求URL相关参数

今天在找获取当前网址除去参数的js方式&#xff0c;结果自己会的竟然只有window.location.href 先看一个示例 用javascript获取url网址信息 <script type"text/javascript"> document.write("location.host"location.host"<br>"); d…

wiki语法大全

Wiki语法大全 编辑一个维客页面十分容易。只要点击页面上方的“编辑本页”或右侧的[编辑]链接即可修改该页&#xff0c;或点击“讨论本页”然后再点击“编辑页面”来讨论该页面。点击后您就会看到一个包含那个Wiki页面的可编辑的文字区域。 先将文字复制到您最喜欢的文字编辑器…

驱动认知

用户态 App&#xff1a;cp指令&#xff0c;ftp的项目等等这就是App的开发。 App开发需要C的基础和C库&#xff0c;C库讲到文件&#xff0c;进程&#xff0c;进程间通信&#xff0c;线程&#xff0c;网络&#xff0c;界面&#xff08;GTk&#xff09;。 C库&#xff08;是linux标…

TreeMap实现排序

TreeMap TreeMap实现SortMap接口&#xff0c;能够把它保存的记录根据键排序&#xff0c;默认是按键值的升序排序&#xff0c;也可以指定排序的比较器。当用Iterator遍历TreeMap时&#xff0c;得到的记录是排过序的。 TreeMap取出来的是排序后的键值对。但如果您要按自然顺序或…

CSS 布局实例系列(四)如何实现容器中每一行的子容器数量随着浏览器宽度的变化而变化?...

Hello&#xff0c;小朋友们&#xff0c;还记得我是谁吗&#xff1f;对了&#xff0c;我就是~超威~好啦&#xff0c;言归正传&#xff0c;今天的布局实例是&#xff1a; 实现一个浮动布局&#xff0c;红色容器中每一行的蓝色容器数量随着浏览器宽度的变化而变化&#xff0c;就如…

基于框架编写驱动代码

操作驱动的上层代码&#xff08;pin4test&#xff09; #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h>void main() {int fd,data;fd open("/dev/pin4",O_RDWR);if(fd<0){printf("open fail…