1

Я хочу, чтобы иметь возможность центра увеличить все мои полилинии для моего сайта.подходящие для google-карт api v3 не сосредоточены на моих полилиниях

Кроме того, я хотел бы добавить маркеры к каждой из этих новых пар координат. Я видел много примеров для нескольких маркеров и несколько plygons, но никогда для ломаных линий, и я не могу обойти эту проблему ...

Я видел некоторые очень полезные страниц, как это: http://salman-w.blogspot.com/2009/03/zoom-to-fit-all-markers-polylines-or.html

Но большинство из них предполагают какое-то знание заранее, тогда как я мало знаю.

Это мой код:

<script type="text/javascript"> 

    function initialize() { 
    var myLatLng = new google.maps.LatLng(45.397, 5.644); 
    var centerLatLng = new google.maps.LatLng(35.71,-1.905); 

    var myOptions = { 
    zoom: 5, 
    center: centerLatLng, 
    scrollwheel: false, 
    mapTypeControl: false, 
    mapTypeId: google.maps.MapTypeId.SATELLITE 
    }; 

    var map = new google.maps.Map(document.getElementById("map_canvas"), 
     myOptions); 

    var flightPlanCoordinates = [ 
    new google.maps.LatLng(45.397, 5.644), 
    new google.maps.LatLng(28.713383,-17.905781), 
    new google.maps.LatLng(20.713383,-19.905781), 
    new google.maps.LatLng(25.713383,-29.905781), 

    ]; 

    var flightPath = new google.maps.Polyline({ 
    path: flightPlanCoordinates, 
    strokeColor: "#dddd00", 
    strokeOpacity: 1.0, 
    strokeWeight: 3 
    }); 

    flightPath.setMap(map); 

} 
</script> 

Заранее спасибо, я очень новой для Googles API и на этом сайте.

ответ

9

Попробуйте добавить позиции ваших точек на ограничивающий объект, а затем с помощью fitBounds, что-то вроде этого:

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

var point1 = new google.maps.LatLng(45.397, 5.644); 
bounds.extend(point1); 
var point2 = new google.maps.LatLng(28.713383,-17.905781); 
bounds.extend(point2); 
var point3 = new google.maps.LatLng(20.713383,-19.905781); 
bounds.extend(point3); 
var point4 = new google.maps.LatLng(25.713383,-29.905781); 
bounds.extend(point4); 

map.fitBounds(bounds);