Масштабирование google map
Такая задача: нужно сделать автомасштабирование для гуглкарты, с множеством маркеров, таким образом, чтобы отображались ВСЕ маркеры на карте.
Карта выводится стандартными методами API v3. Нашел вот такой вариант: // Create a LatLngBounds object var bounds = new google.maps.LatLngBounds(); for (var i = 0; i < myPositions.lenght; i++) { // Insert code to add marker to map here // Extend the LatLngBound object bounds.extend(myPositions[i]); } map.fitBounds(bounds); где myPositions - массив, содержащий LatLng объекты. Но никак не могу реализовать этот вариант (если он вообще рабочий). Мой код: <script> function initialize() { var Latlng = new google.maps.LatLng(56.81520299171724, 35.86254508842774); var myOptions = { zoom: 8, center: Latlng, mapTypeId: google.maps.MapTypeId.ROADMAP } var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); // Далее идет php-код, который в цикле выводит маркеры //запрос к БД, обработка результата, цикл for($i=0; $i<$num; $i++){, //echo" var myLatlng$i = new google.maps.LatLng($lat, $lng); var marker$i = new google.maps.Marker({ position: myLatlng$i, map: map }); var contentString$i = '<div id='content'>$address</div>'; var infowindow$i = new google.maps.InfoWindow({ content: contentString$i }); google.maps.event.addListener(marker$i, 'click', function() { infowindow$i.open(map,marker$i); }); //";} } </script> |
Часовой пояс GMT +3, время: 22:35. |