将一系列标记添加到LeafletJS地图后,是否可以让Leaflet进行缩放并重新对齐它以显示每个标记?我看到many similar questions与Google地图有关,但没有传单。
类似的东西:
map.fitAllMarkers();
我还注意到several functions in Leaflet来获取地图的边界,但我不确定如何将这些用于预期效果。
答案 0 :(得分:3)
您还可以利用专门制作的featureGroup.getBounds()
方法让地图符合您的标记范围:
var fg = L.featureGroup([arrayOfMarkers]).addTo(map);
map.fitBounds(fg.getBounds());
答案 1 :(得分:1)
最后,这实际上很简单,但并没有统一到一个功能中。首先,您需要创建Leaflet bounds对象:
var bounds = new L.LatLngBounds();
然后,对于地图上的每个标记:
bounds.extend(markerObject.getLatLng());
最后,将新边界应用于地图:
mapObject.fitBounds(bounds);