Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将方形瓷砖添加到具有悬停效果的传单地图?_Javascript_Css_Gis_Leaflet_Tiles Game - Fatal编程技术网

Javascript 如何将方形瓷砖添加到具有悬停效果的传单地图?

Javascript 如何将方形瓷砖添加到具有悬停效果的传单地图?,javascript,css,gis,leaflet,tiles-game,Javascript,Css,Gis,Leaflet,Tiles Game,我想将我的地图分割为块/区域。所以我准备了另一个显示方块的图层。但是这一层充满了.png图像文件,所以这个方块没有数据/对象 我还尝试用传单的几何体对象画正方形。但它会导致性能问题,有时会显示500多个方块 如果你开发出这样的东西,你会选择什么方法?乌特弗里德?GeoJSON/几何?或者其他更好的解决方案 更新: 实际上,我不想得到属于正方形区域的数据,我只想改变正方形的颜色,我的意思是,我想突出显示该区域,也许当用户鼠标经过时,我可以动态创建一个矩形 我尽量避免使用UTFGrid进行高亮显示。

我想将我的地图分割为块/区域。所以我准备了另一个显示方块的图层。但是这一层充满了.png图像文件,所以这个方块没有数据/对象

我还尝试用传单的几何体对象画正方形。但它会导致性能问题,有时会显示500多个方块

如果你开发出这样的东西,你会选择什么方法?乌特弗里德?GeoJSON/几何?或者其他更好的解决方案

更新:

实际上,我不想得到属于正方形区域的数据,我只想改变正方形的颜色,我的意思是,我想突出显示该区域,也许当用户鼠标经过时,我可以动态创建一个矩形


我尽量避免使用UTFGrid进行高亮显示。但是我想确定UTFGrid是否是唯一的方法。

这听起来像是创建UTFGrid的确切原因!链接到我在学习UTFGrid时使用的教程,它是实心的

更新后更新:

MarkerCluster可能具有您想要的外观/感觉,它们基本上在地图层上绘制多边形。您可以查看源代码,下面是一个相关的代码片段:

    _showCoverage: function (e) {
            var map = this._map;
            if (this._inZoomAnimation) {
                    return;
            }
            if (this._shownPolygon) {
                    map.removeLayer(this._shownPolygon);
            }
            if (e.layer.getChildCount() > 2 && e.layer !== this._spiderfied) {
                    this._shownPolygon = new L.Polygon(e.layer.getConvexHull(), this.options.polygonOptions);
                    map.addLayer(this._shownPolygon);
            }
    },

这听起来像是创建UTFGrid的确切原因!链接到我在学习UTFGrid时使用的教程,它是实心的

更新后更新:

MarkerCluster可能具有您想要的外观/感觉,它们基本上在地图层上绘制多边形。您可以查看源代码,下面是一个相关的代码片段:

    _showCoverage: function (e) {
            var map = this._map;
            if (this._inZoomAnimation) {
                    return;
            }
            if (this._shownPolygon) {
                    map.removeLayer(this._shownPolygon);
            }
            if (e.layer.getChildCount() > 2 && e.layer !== this._spiderfied) {
                    this._shownPolygon = new L.Polygon(e.layer.getConvexHull(), this.options.polygonOptions);
                    map.addLayer(this._shownPolygon);
            }
    },

谢谢你的回答,我刚刚更新了我的问题。事实上,我尽量避免使用utfgrid(我不知道如何生成)来改变颜色或以某种方式突出显示该区域。好吧,那么你想要一种与markercluster完全一样突出显示的东西吗?谢谢你的回答,我刚刚更新了我的问题。事实上,我尽量避免使用utfgrid(我不知道如何生成)来改变颜色或以某种方式突出显示该区域。好吧,那么你想要一种与markercluster完全一样突出显示的东西吗?