1.前言
ArcGIS 发布的切片服务分为紧凑型切片和传统的分散型切片以及最新ArcGIS por新增的矢量切片。传统的分散型切片面临的问题是文件个数太多,部署拷贝过程十分的耗时,紧凑型切片是对分散型切片进行压缩处理的。一个.bundle文件可以存上万张切片,有利于部署拷贝,.bundlx文件提供切片索引。本教材分为三个模块依次是
(1)文件解析。
(2)webgis动态加载紧凑型切片。
(3)紧凑型批量转分散型。
下面是对紧凑型切片解析的过程,实现使用的c#代码。
2.解析
解析过程我是参考github上的一个就node.js实现的开源项目,项目地址:GitHub - fuzhenn/tiler-arcgis-bundle: A nodejs map tile reader for compact tile storage format used by ESRI ArcGIS10.0+,现在进入解析过程,在8级切片下面紧凑型文件的切片目录如下。
大家可以发现所有.bundlx切片索引文件大小都是81kb,查阅资料发现每个切片索引都存放着128*128个切片的索引地址。但是并不是每个.bundle文件都有128*128个切片,例如1级切片只有4个图片,其余位置会为空字节表示。解析方式就是通过切片的X,Y,Z作为参数解析出