(地图瓦片纠偏最好的方法在这:https://www.cnblogs.com/s0611163/p/15606460.html)

    地图区域是一个市,偏移量可以近似认为是固定不变的,通过修改Leaflet-src.js源码中的_update方法和_addTile方法对瓦片进行偏移纠偏。

    Leaflet版本v1.3.4,要修改的_update和_addTile方法和最新版本1.6.0区别不大。

1、在_update方法中添加如下代码,瓦片图偏移后,在边缘位置需要补充瓦片图显示,不然边缘会出现空白:

        //处理纠偏后瓦片显示
        var ratio = 1 / Math.pow(2, (18 - this._tileZoom)); //计算纠偏比率
        var deltaX = 0;
        var deltaY = 0;
        if (this._map.options.offsetX) deltaX = this._map.options.offsetX * ratio / 256;
        if (this._map.options.offsetY) deltaY = this._map.options.offsetY * ratio / 256;
        if (deltaX > 0) tileRange.max.x += (Math.round(deltaX) + 1);
        if (deltaY > 0) tileRange.max.y += (Math.round(deltaY) + 1);
        if (deltaX < 0) tileRange.min.x -= (Math.floor(deltaX) - 1);
        if (deltaY < 0) tileRange.min.y -= (Math.floor(deltaY) - 1);
View Code

相关文章:

  • 2022-12-23
  • 2021-12-02
  • 2021-10-04
  • 2021-12-26
  • 2021-12-09
  • 2022-12-23
猜你喜欢
  • 2021-06-25
  • 2021-12-10
  • 2022-01-01
  • 2022-12-23
  • 2021-12-04
  • 2021-05-01
相关资源
相似解决方案