SORU
12 EKİM 2009, PAZARTESİ


Google Map v3 — set sınırları ve orta API

Son zamanlarda Google Maps API V3 açık ettik. Bir dizi, ancak merkezi ve otomatik olarak işaretleri açısından yakınlaştırmak için nasıl bilmiyorum işaretçilerini basit bir örnek üzerinde çalışıyorum.

Yüksek ve düşük net, Google'ın kendi belgeleri de dahil olmak üzere aradım, ama net bir cevap bulamadım. Sadece koordinatları ise ortalama alabileceğimi biliyorum, ama nasıl set buna göre yakınlaştırma ki?

function initialize() {
  var myOptions = {
    zoom: 10,
    center: new google.maps.LatLng(-33.9, 151.2),


    mapTypeId: google.maps.MapTypeId.ROADMAP
  }
  var map = new google.maps.Map(document.getElementById("map_canvas"),myOptions);

  setMarkers(map, beaches);
}


var beaches = [
  ['Bondi Beach', -33.890542, 151.274856, 4],
  ['Coogee Beach', -33.423036, 151.259052, 5],
  ['Cronulla Beach', -34.028249, 121.157507, 3],
  ['Manly Beach', -33.80010128657071, 151.28747820854187, 2],
  ['Maroubra Beach', -33.450198, 151.259302, 1]
];

function setMarkers(map, locations) {

  var image = new google.maps.MarkerImage('images/beachflag.png',
      new google.maps.Size(20, 32),
      new google.maps.Point(0,0),
      new google.maps.Point(0, 32));
    var shadow = new google.maps.MarkerImage('images/beachflag_shadow.png',

      new google.maps.Size(37, 32),
      new google.maps.Point(0,0),
      new google.maps.Point(0, 32));


      var lat = map.getCenter().lat(); 
      var lng = map.getCenter().lng();      


  var shape = {
      coord: [1, 1, 1, 20, 18, 20, 18 , 1],
      type: 'poly'
  };
  for (var i = 0; i < locations.length; i  ) {
    var beach = locations[i];
    var myLatLng = new google.maps.LatLng(beach[1], beach[2]);
    var marker = new google.maps.Marker({
        position: myLatLng,
        map: map,
        shadow: shadow,
        icon: image,
        shape: shape,
        title: beach[0],
        zIndex: beach[3]
    });
  }
}

CEVAP
5 ŞUBAT 2010, Cuma


Evet, sadece yeni sınırlar nesne bildirin.

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

Her bir gösterge için, sınırlarını genişletmek nesne:

bounds.extend(myLatLng);
map.fitBounds(bounds);

API: google.maps.LatLngBounds

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Android Developers

    Android Deve

    9 Kasım 2007
  • EEVblog

    EEVblog

    4 NİSAN 2009
  • olinerd

    olinerd

    23 AĞUSTOS 2007