javascript 单张叠加矢量瓦片点击选取要素

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 单张叠加矢量瓦片点击选取要素相关的知识,希望对你有一定的参考价值。


        map.on('click', function (e) {
            var point = e.layerPoint;
            var hitLayers = [];
            for (var dataId of layerVectorTile.keys()) {
                var layer = layerVectorTile.get(dataId);
                if (!layer) {
                    continue;
                }
                var layerGroup = {
                    dataId: dataId,
                    layers: []
                };
                for (var i in layer._vectorTiles) {
                    var tile = layer._vectorTiles[i];
                    var _point = point.subtract(tile.getOffset());
                    for (var j in tile._layers) {
                        if (tile._layers[j]._containsPoint(_point)) {
                            layerGroup.layers.push(tile._layers[j]);
                        }
                    }
                }
                if (layerGroup.layers.length > 0) {
                    hitLayers.push(layerGroup);
                }
            }
            console.log(hitLayers);
        });

以上是关于javascript 单张叠加矢量瓦片点击选取要素的主要内容,如果未能解决你的问题,请参考以下文章

openlayers6结合geoserver实现地图矢量瓦片(附源码下载)

Mapbox系列之矢量切片工具Tippecanoe

【GIS】矢量瓦片,GeoServer+Mapbox

关于使用L.vectorGrid进行矢量切片,无法获取点属性的问题

mapbox.gl源码解析——基本架构与数据渲染流程

地图瓦片整体介绍