openlayer3加载arcgis切片图

一个菜鸟,因为需求最近要用ol3加载切片的天地图遇到的一些问题记录下吧

重点:ArcGIS切片文件夹和文件名都是以16进制的形式命名的,就是将原来的x,y更改为以16进制表示的形式就可以了,Z是地图的层级。

一、先说下openlayer2它加载aicgis切片图

在openlayer2中用的是这个方法OpenLayers.Layer.ArcGISCache,这个继承的是OpenLayers.Layer.XYZ这个类主要的就是里面的getUrl方法:

下面是openlayer2源码中的方法:

openlayer3加载arcgis切片图_第1张图片

其中重要的就是获取x,y ,z将他进行arcgis相应的16进制转换:


openlayer3加载arcgis切片图_第2张图片

上面的是转16进制


openlayer3加载arcgis切片图_第3张图片

这个是baseTypes.js这个是补0的方法。

上面的都是从open layer2源码中对比发现的,它写的这个补零方法真的简单。

二、ol3加载arcgis切片图。

直接上截图吧

openlayer3加载arcgis切片图_第4张图片

这是ol3的加载,这里projection要根据你以前切的图的projection设定。不然不给默认是:'EPS:3857'.不相同图会变形。

三、总结

还遇到的一些问题就是arcgis切图会有大小写之分,所以可以toUpperCase();转下x,y, z;

通过url访问到每个切片,其实这个问题在使用IIS发布切片图时是不存在的,Tomcat发布切片,会有大小写之分,所以要进行转换。(openlayer默认是小写)

这种方法不需要读切片的配置文件,但是要知道切片的坐标系.。

一些记录、能在路上不是是咸鱼非咸鱼,希望有梦能仗剑。

你可能感兴趣的:(openlayer3加载arcgis切片图)