Leafletjs:动态更改地图要素颜色

时间:2018-01-09 11:21:12

标签: maps leaflet openstreetmap

现在已经有几天了,我一直在寻找一种能够使用leaflet.js动态更改不同地图功能(如道路,水,建筑物,背景等)的颜色的方法。我知道我们在Mapbox中使用Mapbox GL有这个选项。但我想知道是否可以使用leaflet.js库来实现。

任何帮助/解决方法都将受到高度赞赏。 感谢

1 个答案:

答案 0 :(得分:3)

默认情况下,Leaflet只能渲染光栅图块(即无法轻易修改的普通图像)和矢量形状(通常来自GeoJSON数据)。

如果要修改切片渲染,则主要有3个选项:

  • 使用您自己的样式下载OSM数据并重新渲染切片(即创建您自己的切片服务器)。 OSM维基应该有一些页面来解释如何这样做。
  • 使用提供自定义样式的平铺渲染的在线服务(例如Mapbox)。
  • 使用Leaflet.VectorGrid插件从OSM下载矢量数据并提供自己的样式。

如果您希望能够在运行时修改渲染,那么只有第3个选项是合适的。