openlayers 加载ArcGIS 切片地图

编程入门 行业动态 更新时间:2024-10-27 18:26:25

openlayers 加载ArcGIS <a href=https://www.elefans.com/category/jswz/34/1769942.html style=切片地图"/>

openlayers 加载ArcGIS 切片地图

我这里使用的版本是openlayers 3.11.1

主要的方式是使用 ol.source.XYZ 这个类来加载 切片,ArcGIS生成切片的目录文件的方式为:
\L10\R00000181\C0000034a.png

其中 10 为地图的缩放比例,00000181和’0000034a’ 分别是十六进制的 切片横纵坐标,也就是说我们按照这个规律就可以加载到对应的切片,然后将加载的切片拼接成图层加载到map对象就ok了。

核心代码:

// ol.source.XYZ添加瓦片地图的层var tileLayer = new ol.layer.Tile({source: new ol.source.XYZ({tileUrlFunction: function (tileCoord) {console.log(tileCoord);//alert(tileCoord[0] + " X= " + tileCoord[1] + " Y= " + tileCoord[2]);var oo = "00000000";var zz = tileCoord[0];var z = "L" + zz;var xx = tileCoord[1].toString(16);var x = "C" + oo.substring(0, 8 - xx.length) + xx;var yy = (-tileCoord[2] - 1).toString(16); //注意此处,计算方式变了var y = "R" + oo.substring(0, 8 - yy.length) + yy;return  'C:\\arcgisserver\\directories\\arcgiscache\\test1\\Layers\\_alllayers/' + z + '/' + y + '/' + x + '.png';},projection: 'EPSG:3857'})});map.addLayer(tileLayer);

有一点需要注意的是,默认的缩放级别是从 0~28,如果对应级别没有自己的切片的话,控制台就会报找不到切片,这个还没处理,可以控制一下最大最小的缩放级别和范围。

效果示例:我这里还加了一个OSM地图的底图,网络好的时候加载很快,网差的时候就慢点

更多推荐

openlayers 加载ArcGIS 切片地图

本文发布于:2024-03-23 22:12:20,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1743444.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:切片   加载   地图   openlayers   ArcGIS

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!