如何设置地图缩放以覆盖可见标记的所有标记?

时间:2015-09-30 07:04:24

标签: javascript google-maps google-maps-api-3

我创建了一个带有标记的地图,这些标记从mongodb集合中获取latlongs数据。我已将中心设置为特定位置并将缩放级别设置为5但我希望地图应根据标记放大或缩小&# 39; s location所以我不必在中心给出任何特定的位置。 请帮忙。

守则如下 -

while

谢谢,

直径

1 个答案:

答案 0 :(得分:12)

您要做的是创建一个LatLngBounds对象。添加每个标记时,可以展开边界以包含该标记的位置。添加完所有标记后,您可以更新地图以适应这些边界,并自动调整其缩放,以便所有标记都可见。

var bounds = new google.maps.LatLngBounds();

for (i = 0; i < LatLngs.length; i++) {
    position = new google.maps.LatLng(LatLngs[i][0], LatLngs[i][1]);

    marker = new google.maps.Marker({
        position: position,
        map: map
    });

    bounds.extend(position)
}

map.fitBounds(bounds);