1

サイトのすべてのポリラインを中央ズームできるようにしたいと思います。

また、これらの新しい座標ペアのそれぞれにマーカーを追加したいと思います。複数のマーカーと複数のプライゴンの例をたくさん見てきましたが、ポリラインの例は一度もありません。この問題を回避することはできません...

私はこのような非常に役立つページを見てきました: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>

事前のおかげで、私はグーグルAPIとこのサイトに非常に新しいです。

4

1 に答える 1

11

ポイントの位置を境界オブジェクトに追加してから、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);
于 2012-03-30T22:10:36.563 に答える