我正在使用Leaflet(具有多功能工具和MapQuest磁贴插件)来显示带有彩色多边形的地图。地图和多边形看起来/工作正常,但是到处都有这些神秘的蓝色标记。
JS中根本没有关于标记的任何内容,如果我注释掉polygon.addTo(map);
行,则标记会消失。因此,即使它们没有直接定位在多边形上,它们也确实与多边形有关。
您知道为什么标记会出现或如何使它们消失吗?
已解决:事实是,问题出在我使用MSSQL的“ .Reduce(n)”函数来简化多边形(以提高性能),如果将多边形简化得太多,结果将是其中的“点(...)”项-传单作为标记呈现!
现在,开始弄清楚MSSQL为什么将事情变成要点...
答案 0 :(得分:0)
欢迎您!
您的polygon
变量很可能是由omnivore插件构建的Leaflet GeoJSON图层组,您提供给它的数据包含"Point"
类型的几何。
如果您未指定任何处理这些点的特殊方法,Leaflet将使用此默认的蓝色标记图标来呈现它们。
在那种情况下,您可以简单地过滤掉这些点要素,无论是在杂项处理之后(使用ready事件)还是使用带有filter
选项的自定义GeoJSON图层组。应该还有其他文章描述这种解决方案。
例如参见Mapbox: Filtering out markers in a Leaflet Omnivore KML layer
如果您不是这种情况,则必须提供更多信息,以使人们能够为您提供帮助。通常用于构建polygon
图层和示例数据的代码。