2011-05-13 54 views
1

我想添加一個隨機放置的標記數組到谷歌地圖在Flash與API V3和AS3。創建,然後刪除隨機標記谷歌地圖api3閃存

我可以創建標記沒有問題,但我有點麻煩把它們放入一個數組,然後清除它們,因爲我需要提供此功能。

我看到另一篇文章,人們在談論缺乏map.clearOverlays();在V3?我需要一些幫助來結合我的代碼。

var markers:Array = new Array();

function addmarkers() 
{ 
    // Add 10 markers to the map at random locations 
    var bounds:LatLngBounds = map.getLatLngBounds(); 
var southWest:LatLng = bounds.getSouthWest(); 
var northEast:LatLng = bounds.getNorthEast(); 
var lngSpan:Number = northEast.lng() - southWest.lng(); 
var latSpan:Number = northEast.lat() - southWest.lat(); 
for (var i:int = 0; i < 10; i++) 
{ 
    var newLat:Number = southWest.lat() + (latSpan * Math.random()); 
    var newLng:Number = southWest.lng() + (lngSpan * Math.random()); 
    var latlng:LatLng = new LatLng(newLat,newLng); 
    map.addOverlay(new Marker(latlng)); 
    markers.push(); 

} 

}

我有一個按鈕,調用此,但後來我也希望有一個按鈕

回答

1

我的工作代碼與你合併,謝謝。

function dorandomPoints(e:MouseEvent):void 
{ 
if (chkbox.selected) 
{ 

    var bounds:LatLngBounds = map.getLatLngBounds(); 
    var southWest:LatLng = bounds.getSouthWest(); 
    var northEast:LatLng = bounds.getNorthEast(); 
    var lngSpan:Number = northEast.lng() - southWest.lng(); 
    var latSpan:Number = northEast.lat() - southWest.lat(); 


    for (var i:int = 0; i < 10; i++) 
    { 
     var newLat:Number = southWest.lat() + (latSpan * Math.random()); 
     var newLng:Number = southWest.lng() + (lngSpan * Math.random()); 
     var latlng:LatLng = new LatLng(newLat,newLng); 
     var marker:Marker = new Marker(latlng); 
     markerArray.push(marker); 
     map.addOverlay(markerArray[i]); 
     //map.removeOverlay(marker); 
     //trace(markerArray.length); 
    } 
} 
else 
{ 


    while (markerArray.length > 0) 
    { 
     var m:Marker = markerArray.shift() as Marker; 
     map.removeOverlay(m); 
     m = null; 
    } 


} 
} 
2

你能遍歷數組並調用map.removeOverlay()上的每個標記?

function removeMarkers():void { 
    while(markers.length > 0) { 
     var m:Marker = markers.shift() as Marker; 
     map.removeOverlay(m); 
     m = null; 
    } 
} 
+0

嗨,這聽起來像一個好主意,但我正確地將標記添加到數組,然後能夠刪除它們。如何查看用標記添加到陣列的信息。可以將數組的內容轉儲到控制檯。謝謝你。 – weaveoftheride 2011-05-14 11:29:19