我有一个lat长对列表。 (或者我可以创建GeoJSON)。我想将它们全部映射到传单地图上。
如何找到我应该设置的中心和缩放级别,以便显示所有点。
所有传单示例似乎都使用固定的中心和缩放,但我接受用户输入,所以我需要计算它们。
答案 0 :(得分:8)
最简单的方法是使用LatLngBounds
对象。然后,您可以拥有地图fitBounds。或者如果您愿意,可以获得其中心manually。
var myPoints = [[1,1],[2,2] /*, ...*/ ];
var myBounds = new L.LatLngBounds(myPoints);
myMap.fitBounds(myBounds); //Centers and zooms the map around the bounds
如果您愿意,甚至可以放弃实例化bounds对象:
myMap.fitBounds([[1,1],[2,2] /*, ...*/ ]);
答案 1 :(得分:2)
我建议使用GeoJSON并按照tutorial中的说明创建传单地图。您只需将geojsonLayer.getBounds()
与map.setBounds()
一起使用即可缩放数据。