Ciao a tutti, con questo codice dato un array di marker metto quelli a cui sono vicino in un altro array (visibili) che svuoto e riempio appena mi muovo in modo di avere sulla mappa solo i marker vicini.

Funziona in quanto ogni volta che mi muovo mi dice quanti ce ne sono nell'array visibili, ma non riesco però a cancellarli fisicamente dalla mappa...

mi dareste una mano??

codice:
var markers = [                ['prova1', 43.84275, 10.5040667],
                ['prova2', 43.8428333, 10.5040833],
                ['prova3', 43.8429333, 10.5040833]
            ];


//creo array dei marker visibili
var visibili = [];




   var inizio = new google.maps.LatLng(43.8427752, 10.504052);


            function initialize() {
                var panoramaOptions = {
                    position: inizio,
                    pov: {
                      heading: 165,
                      pitch: 0
                    },
                    zoom: 1
                };


                var myPano = new google.maps.StreetViewPanorama(document.getElementById('map-canvas'),panoramaOptions);
                myPano.setVisible(true);


    
    var miaposizione = new google.maps.LatLng(43.8427752, 10.504052);
                google.maps.event.addListener(myPano, 'position_changed', function() {
                     miaposizione = myPano.getPosition(); 




            
    //ogni volta che cambio posizione l'array marker visibili si svuota 
    eliminaMarkers();


                  
var metri = 50;


                for (var i = 0; i < markers.length; i++) {
                    var myMarker = markers[i];
                    coords2 = new google.maps.LatLng(myMarker[1], myMarker[2]);
                    var distance = google.maps.geometry.spherical.computeDistanceBetween(miaposizione,coords2);




    
                    if(distance <= metri) {
                        
                       
            
                        var posizione = new google.maps.LatLng(myMarker[1], myMarker[2]);


                        var marker = new google.maps.Marker({
                        position: posizione,
                        icon: 'Azure.png',
                        map: myPano,    
                        title: myMarker[0]
                        });
                        
                        //se sono vicini metto i marker nell'array visibili
                    visibili.push(myMarker);
            
            alert(visibili.length)


                    }else{
                   
            eliminaMarkers();
            
             
                    }
                }






                });         




}




//svuota i marker visibili
function eliminaMarkers() {


  visibili = [];
}






            google.maps.event.addDomListener(window, 'load', initialize);