【转】ArcGIS地图缓存制作简介
[PDF]ArcGIS 地图缓存制作简介 - Esri中国
ArcGIS地图缓存制作简介
制作好的电子地图只有发布为服务后才能为更多的用户所查看与使用。ArcGIS Server 为共享 GIS 资源(如地图)提供了一个平台,无论您是坐在同一间办公室使用 ArcGIS Desktop,还是在世界任何一个角落通过 Internet 方式,都可访问和使用地图。同时如果使用了地图缓存技术,将会获得更高效快捷访问地图的体验。
1 ArcGIS Server发布缓存地图流程
使用ArcGIS Server发布缓存地图,主要有以下几个步骤,如图1所示:
图1 地图发布流程
2 ArcGIS Server缓存特性
灵活的瓦片方案选择
ArcGIS Server切图时,可通过多种方式选择瓦片方案:从在线地图服务,如ArcGIS online,Google Maps或者Bing Maps中载入;从已有地图服务(Map service)中载入;也可根据需求创建自己的缓存策略(Tiling Schema)。
丰富的缓存策略
ArcGIS Server支持全图范围创建缓存,也支持某个地图范围内创建缓存地图。这两种情况适用于小比例尺或数据量较小的情况下;当数据量较大或者比例尺较大时,可采用渔网切图(也可应用于分幅切图,图2所示),即在设定的feature class 范围内创建缓存,来节省缓存创建时间和硬盘空间。
在数据更新或者修改时,可根据需更新的要素范围,进行局部地图缓存的创建或更新,从而节省大量时间。当地图在大比例尺下显示存在很多空白、不可用或用户兴趣度低的区域时,可以采用按需缓存(on demand)策略。按需缓存可以减轻创建和存储这些不必要切片时的负担,但用户仍可以在需要它们的时候对其进行查看。其原理如图3所示:

图2 规则渔网 图3 按需缓存原理
紧凑的存储模式
在ArcGIS 10中,新增紧凑(Compact)缓存格式(文件流),使用紧凑缓存格式可将切片分组到各个较大的包文件中,而不用将每个切片都存储为单独的文件。紧凑缓存中文件的整体数量较少,因而比传统的松散缓存占用的磁盘空间少(图4)。紧密缓存在各计算机之间的传输速度更快,这将有利于在过渡环境和生产环境之间复制缓存。
图4 紧凑型与松散型切图对比图
混合模式的图片格式
混合模式缓存允许在同一缓存中使用不同图像格式的切片。这在栅格缓存叠加显示的情况下十分有用。可对位于缓存区中部的切片应用 JPEG 格式以减少相关文件的大小,而在缓存的外围(即部分切片需要保持透明)应用 PNG32 格式。

图5 混合模式图片格式(JPEG+PNG32)
分布式缓存方式
如果多数 SOC 计算机都在处理紧凑存储格式的地图缓存,则可选择其他选项来将切片写入服务器上的本地缓存目录。这样首先在本地写入切片(以紧凑 .bundle 格式),然后将
完成的包复制到共享的缓存目录,就提高了性能。与所有计算机将切片直接写入共享的缓存目录相比,此方法要快许多。
注:分布式缓存方式目前只对Compact缓存有效。
协作创建地图缓存
ArcGIS 10中,增加了缓存导出/导入功能(图6)。可应用于缓存服务融合、离线缓存使用,因而读取切片缓存可像读取栅格数据集一样,无需使用地图支持服务。

图6 缓存导入/导出示意图
3 地图缓存创建与使用
地图缓存的创建方式有多种,可以直接在ArcCatalog中,通过服务属性Caching项,点击“Create Tiles”或“Update tiles”创建;也可使用ArcToolBox下的Server Tools工具箱创建,其流程图如图7所示。

图7 创建缓存地图服务工作流程
缓存方案的使用更为简单,以Esri基于《电子地图规范》制作的瓦片方案模板“公共服务平台电子地图切片方案.xml”为例,我们只需在Caching选项卡中,导入此方案即可看到瓦片方案中的各项参数:包括地图的起始点、图片格式、显示比例等,如图8所示

图8 缓存方案使用示意图
4 总结
ArcGIS缓存技术结合ArcGIS桌面端可为各种应用提供强大的技术支持,尤其在ArcGIS 10版本中具备更高效便捷的功能。
优化的配图效果
MSD是经过性能优化的地图文档,具有更平滑的要素显示效果,并提供地图预览功能。ArcGIS 10完善和改进了之前MSD不支持Maplex而只能用MXD+Maplex+Smooth line and label edges方案进行配图的问题。使用MSD进行地图预览,能更快速地查看效果(该效果同切图后效果一致)。因此,在海量数据地图切图时,可先预览查看效果来进行配图的调整,无需等待长时间切图后查看效果再进行修改。
高效的迁移模式
紧凑型切图模式将缓存图片存储在一个连续的文件流中,大大减小了小文件的数量,可以快速的拷贝/移动/删除缓存文件,大大降低磁盘浪费率,也加快了切图和迁移的速度。与
缓存相关的GP工具可将之前的缓存文件,打包为Compact方式,进行整个数据迁移。
完整的切图方案
ArcGIS提供了一套完整的切图方案,从地图的发布到缓存的创建以及管理维护,都体现了工作流的思想,同时在ArcGIS中可通过多种方式实现缓存管理:既可通过ArcCatalog中服务属性的Caching选项卡,也可使用GP工具中的Server Tools工具箱;还能使用Python脚本自动运行程序。
混合模式的图片格式
混合模式缓存允许在同一缓存中使用不同图像格式的切片。
这在栅格缓存叠加显示的情
况下十分有用。可对位于缓存区中部的切片应用
JPEG
格式以减少相关文件的大小,而在
缓存的外围(即部分切片需要保持透明)应用
PNG32
格式。
图
5
混合模式图片格式(
JPEG+PNG32
)
【转】ArcGIS地图缓存制作简介的更多相关文章
- arcgis server账号需要设置地图缓存的访问权限
如果gis服务起不来,那么可以看看arcgis server账号有没有设置地图缓存的访问权限,有可能arcgis server账号没有这个文件夹的访问权限. 本文用菊子曰发布
- ArcGIS Runtime数据制作教程
分类: ArcGIS Runtime 2012-04-20 22:25 879人阅读 评论(0) 收藏 举报 工具测试文档file工作c ArcGIS Runtime不能直接加载shp数据,或者mxd ...
- Howto: 如何将ArcGIS Server缓存移动到新服务器
Howto: 如何将ArcGIS Server缓存移动到新服务器 文章编号: 33686 软件: ArcGIS Server 9.2, 9.3, 9.3.1 操作系统: Windows 2000, ...
- ArcGIS Server 缓存服务切图范围
win10 + Server 10.4 + ArcMap 10.4 ArcGIS Server 缓存服务分为创建服务后手动建立缓存和创建服务时同时自动建立缓存两种. 10.2帮助文档:http:/ ...
- arcgis 地图如何转到supermap平台
场景:客户使用arcmap配置好的地图数据,由于项目需要转换到超图平台.有如下几种思路供参考. 1. 使用arcmap生成地图缓存,supermap-iServer支持发布arcgis的地图缓存以及t ...
- arcgis地图数据集合
一.全国的ArcGIS地图SHP格式数据,覆盖的图层信息量基本齐全,除了ArcGIS之外,其他GIS软件(superMap和MapGIS.MapInfo等等)也是用之,适合为GIS开发提供数据素材. ...
- 分享一个在线生成站点地图SiteMap制作工具
站点地图SiteMap的好处是很大的,对Seo很有好处,能够更方便.迅速的让搜索引擎收录.WordPress 有不少生成Google Sitemap 的工具,但是有些只是针对WordPress的系统的 ...
- 【百度地图API】如何利用地图API制作汽车沿道路行驶的动画?——如何获得道路层数据
原文:[百度地图API]如何利用地图API制作汽车沿道路行驶的动画?--如何获得道路层数据 有几个做汽车导航的朋友问我说,他们想在地图上制作一辆车沿着道路行驶的动画.可是,百度地图的道路数据并没有公开 ...
- arcgis地图服务之 identify 服务
arcgis地图服务之 identify 服务 在近期的一次开发过程中,利用IdentityTask工具查询图层的时候,请求的参数中ImageDisplay的参数出现了错误,导致查询直接不能执行,百度 ...
随机推荐
- 用js写的极简的导航菜单,带下拉列表
太简单了,不多说,但是自己还是写了一会,因为总会出现这样那样小的错误,毕境最近在复习和学习一些前台,欢迎看到的各位能给点改进意见或者其它的,Thank you! 首先是发图,只用CSS写了结构,几乎没 ...
- dev GridControl实现拖拽
一.示例说明 以gridControl1和gridControl2为例,从gridControl1拖拽行到gridControl2中去. 二.属性设置 gridControl2.AllowDrop = ...
- C# 隐藏标题栏 调整大小 并且移动窗口
隐藏标题栏(窗口属性): 1.设置在该窗体的标题栏中是否显示控件框: this.ControlBox = false; 2.设置在该窗体的标题为空: this.Text = string.Empty; ...
- openlayers 3监听地图分辨率变化事件
map.getView().on('change:resolution',checkZoom);//checkZoom为调用的函数 function checkZoom() { // alert(&q ...
- Linux下如何查看高CPU占用率线程
转于:http://www.cnblogs.com/lidabo/p/4738113.html 目录(?)[-] proc文件系统 proccpuinfo文件 procstat文件 procpidst ...
- HTML空格标签
双学位论文+本学位开题报告+实训项目+实训考试+学员考试,真是脑子都要爆炸... 话不多说,留个小知识点,HTML的空格替代符号表示法: 1. 半个空白,1个字符宽度: 或者 2.1个空白,2个 ...
- 【原】十分钟搞定pandas
http://www.cnblogs.com/chaosimple/p/4153083.html 本文是对pandas官方网站上<10 Minutes to pandas>的一个简单的翻译 ...
- 工作上遇到的问题 DEBUG 001
java文件断点跳到对应的class文件解决方式 我也是第一次遇到这个问题,找了很久解决办法.后面找开发组老大才解决. 问题描述: 调试程序,在ExportAction.java文件打断点.debug ...
- Python之操作Redis、 RabbitMQ、SQLAlchemy、paramiko、mysql
一.Redis Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.Redis是一个key-value存储系统.和 ...
- LRU页面置换算法
本文以序列长度20的{ 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1};以及页面4:为例: #include <stdio.h> #define Init ...