2010-08-06 35 views
8

Çokgenleri bir Google Haritasına, API'nın v3'ünü kullanarak göstermeye ve kaldırmaya çalışıyorum. JavaScript'imde, bazı özel Lat-Longs bir MVCArray zaten var. Google Haritalar'a Çokgen Ekleme ve Kaldırma v3?

Bunları poligonları eklemek ve daha sonra diğer bazı JavaScript olay veya kullanıcı eylemi dayalı böyle bir poligon bir tıklama (yani kılındığını) olarak, yani poligon silinecektir anlamaya çalışıyorum.

Birisi yardımcı olabilir mi? Herhangi bir kod veya örneklere bağlantılar? Bazı örnekler bulmaya çalışıyorum. Çoğu genellikle bazı v2 kodlarına gider.

cevap

18

API belgelerinde, adding a polygon to a map'un birkaç basit örneği vardır. Tıklandığında çokgen kaldırmak için bir olay dinleyicisi ekleyerek basit Bermuda Triangle örneğinden initialize() işlevi İşte.

function initialize() { 
    var myLatLng = new google.maps.LatLng(24.886436490787712, -70.2685546875); 
    var myOptions = { 
    zoom: 5, 
    center: myLatLng, 
    mapTypeId: google.maps.MapTypeId.TERRAIN 
    }; 

    var bermudaTriangle; 

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

    var triangleCoords = [ 
     new google.maps.LatLng(25.774252, -80.190262), 
     new google.maps.LatLng(18.466465, -66.118292), 
     new google.maps.LatLng(32.321384, -64.75737), 
     new google.maps.LatLng(25.774252, -80.190262) 
    ]; 

    // Construct the polygon 
    bermudaTriangle = new google.maps.Polygon({ 
    paths: triangleCoords, 
    strokeColor: "#FF0000", 
    strokeOpacity: 0.8, 
    strokeWeight: 2, 
    fillColor: "#FF0000", 
    fillOpacity: 0.35 
    }); 

    bermudaTriangle.setMap(map); 

    // add an event listener 
    google.maps.event.addListener(bermudaTriangle, 'click', function() { 
     this.setMap(null); 
    }); 

} 
+3

AHH! Bu yüzden hile google.maps.Polygon _instance_ global olduğundan emin olmaktı. Bu yüzden aynı örneği referans olarak görüntüleyebilmektesiniz. Bunun yerine haritadaki örneği bulmaya çalışmak vb. –

İlgili konular