Domanda

Sto cercando di personalizzare le icone disegnate dall'oggetto GDirections. Ho un elenco di coordinate Lat Long, che io uso per costruire un percorso. Tuttavia, non riesco a trovare un modo di personalizzare (o anche spegnere) i marcatori che vengono automaticamente inseriti dalle API.

var map;
map = new GMap2(document.getElementById("map_canvas"));
.... //get the path coordinates
var route = new GDirections(map);
route.load(path_coordinates);

La chiamata route.getPolyline().hide() nasconde il percorso, ma non i marcatori. Chiamando i rendimenti route.getMarker(1).isHidden() vera e ovviamente nasconderlo non cambia nulla. E 'questa funzionalità non supportati dalle API? Sto usando la mappa api 2.81

È stato utile?

Soluzione

Prova questo codice:

var map;
map = new GMap2(document.getElementById("map_canvas"));
.... //get the path coordinates
var route = new GDirections(map);
route.load(path_coordinates);
GEvent.addListener(route , "addoverlay", hideDirMarkers); 
function hideDirMarkers(){ 
        var numMarkers = route.getNumGeocodes() 
        for (var i = 0; i < numMarkers; i++) { 
                var marker = route.getMarker(i); 
                if (marker != null) 
                        marker.hide(); 
                else 
                        alert("Marker is null"); 
        } 
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top