首页 > 解决方案 > 传单:第一次加载地图时加载了多少瓦片?

问题描述

我将 Leaflet OSM(开放街道地图)集成到我的应用程序中,并且正在加载地图视图。

this.map = leaflet.map(this.mapContainer.nativeElement, {
      preferCanvas: true,
      zoom: 14,
      zoomAnimationThreshold: 0,
      renderer: leaflet.canvas()
    });

我想要加载地图时加载的图块计数。

我检查了传单的官方文档,但没有找到有关计数的信息。

我需要根据屏幕计算加载的瓷砖数量吗?如果是,那怎么办?

标签: leafletopenstreetmap

解决方案


你可以试试这个:

function getTilesCount(){
    var tileLayers = map.getPane('tilePane').children[0].children;
    var idx = -1;
    var tileCount = 0;
    for(var i = 0; i < tileLayers.length; i++){
        var tile = tileLayers[i];
        if(tile.style.zIndex >= idx){
            idx = tile.style.zIndex;
            tileCount = tile.children.length;
        }
    }
    return tileCount;
}

它计算 tile 容器中具有最高 z-Index 的 DOM tile


推荐阅读