美文网首页
leaflet加载arcgis切片

leaflet加载arcgis切片

作者: 子皙丶 | 来源:发表于2020-06-08 09:14 被阅读0次

1. 获取arcgis切片

目录1 目录2

2. 扩展一个leaflet的插件

L.TileLayer.ArcServerTileLoad = L.TileLayer.extend({
  getTileUrl: function (tilePoint) {
    var oo = '00000000'
    var xx = tilePoint.x.toString(16)
    xx = 'C' + oo.substring(0, 8 - xx.length) + xx
    var yy = tilePoint.y.toString(16)
    yy = 'R' + oo.substring(0, 8 - yy.length) + yy

    if (tilePoint.z.toString().length === 1) {
      tilePoint.z = '0' + tilePoint.z.toString()
    }
    return L.Util.template(this._url, L.extend({
      s: this._getSubdomain(tilePoint),
      z: 'L' + tilePoint.z,
      x: xx,
      y: yy
    }, this.options))
  }
})
L.tileLayer.arcServerTileLoad = function (url, options) {
  return new L.TileLayer.ArcServerTileLoad(url, options)
}

3. 加载切片

L.tileLayer.arcServerTileLoad('http://localhost:8080/map/{z}/{y}/{x}.png').addTo(map)

4. 调试

第一次加载上的时候,发现只能加载上一两个,大部分都找不到。后来就打开devtool,发现当地图层级在9级时,加载的是切片实际是6级的切片(这个可以看当地图在第9级时,后台一直在请求哪些切片,再根据这些切片名去文件夹中找到对应的第几层)。
解决办法可以把切片的文件名加上3

相关文章

网友评论

      本文标题:leaflet加载arcgis切片

      本文链接:https://www.haomeiwen.com/subject/fppazhtx.html