Я использую следующий код, чтобы установить маркеры на моей карте:Google MAP API v3: Центр и зум отображенных маркеров
var latLngs = []
$.each(locations.markers, function(i, m){
var myLatLng = new google.maps.LatLng(m.latitude, m.longitude);
latLngs[i] = myLatLng
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
shadow: shadow,
icon: image,
shape: shape,
title: m.city,
zIndex: i
});
})
маркеры появляются на моей карте. Теперь я хотел бы центрировать &, чтобы увеличить карту на этих маркерах. Как я могу это сделать? Я пробовал:
map.fitBounds(getBoundsForLatLngs(latLngs));
console.log из latLngs выдает:
[(46.793182, 7.146903) { b=46.793182, more...}, (46.8077779, 7.1709386) { b=46.8077779, more...}]
Но это, кажется, не работает, и я не получаю сообщение об ошибке в консоли. Что я делаю не так?
это центрирует карту на одной точке. Я хочу центрировать карту по всем показанным точкам. – meo
попробуйте это! http://blog.shamess.info/2009/09/29/zoom-to-fit-all-markers-on-google-maps-api-v3/ – vsync
Это сработало, мне пришлось использовать LatLngBounds так же, как ваш пример. Я передал массив непосредственно в 'fitBounds()'. Thx для вас быстрая поддержка – meo