Poco sfondo. Ho una configurazione di navigazione per quando fai clic su un determinato elemento di navigazione, crea markers
sulla mappa. Se fai clic su un elemento di navigazione diverso, rimuove il precedente markers
e ne configura di nuovi.API v3 di Google Maps rimuovi tutte le polilinee
Bene ora sto lavorando con polylines
e sto provando a creare lo stesso concetto qui con lo polylines
, tuttavia sto avendo un momento difficile. Ecco cosa ho:
// Global variable for array of lines
var points= [];
Imposta i miei punti.
line1 = new google.maps.LatLng(line1Start, line1Finish);
line2 = new google.maps.LatLng(line2Start, line2Finish);
line3 = new google.maps.LatLng(line3Start,line3Finish);
points.push(line1, line2, line3);
Imposta le mie polilinee.
var polyline = new google.maps.Polyline({
path:points,
strokeColor:"#FF0000",
strokeOpacity:1.0,
strokeWeight:2
});
Inizializzare la mappa con le linee.
polyline.setMap(map);
Tutto funziona bene. Le linee sono create e appaiono tra i miei marcatori. Ora lascia rimuoverli (o no ...)
function removeLines() {
if (points) {
points.length = 0;
}
points = [];
}
removeLines() viene chiamato all'inizio della funzione per cancellare loro, allora quelli nuovi sono installati. Questo in effetti cancella i miei punti nell'array dei punti, tuttavia sulla mappa stessa il polylines
appare ancora e non scompare come fanno i miei marcatori.
Cosa dà ?!
Wow .. che facevo prima, però stavo facendo un ciclo sulla matrice punti e facendo punti [i] .setMap (null); Ovviamente questo deve essere sulla polilinea e non sull'array dei punti ... DUH. +1 grazie per avermi aiutato a capire che :) – Romes