Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169

    Differenziare marker google maps

    Ciao ragazzi, utilizzo lo script sottostante per la generazione e la relativa visualizzazione di marker nelle mie mappe, come potete notare non utilizzo il marker di default bensì un icona da me creata.
    Adesso avrei l'esigenza di creare un'altra icona e di assegnarla ad un altro punto della mappa in modo tale da differenziare uno o più marker della stessa mappa, visto che lo script in questione cicla tutti i punti dell'array e assegna lo styesso marker, come potrei fare se ad esempio volessi cambiare solo il marker punti [2] ?

    Grazie

    codice:
    function addGMapOverlays(map) {
     var punti = new Array(); 
     var gtext = new Array();
    
    map.setCenter( new GLatLng(37.509726,14.111938), 8);
    
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    
    punti [0]= new GLatLng (36.731103,14.840968); 
    punti [1]= new GLatLng (36.949702, 14.535504); 
    punti [2]= new GLatLng (36.9590140541446, 14.53765869140625); 
    punti [3]= new GLatLng (37.14714789245618, 14.395909309387207); 
    punti [4]= new GLatLng (37.112079, 13.933596); 
    
     
    gtext [0]='bla bla bla';
    gtext [1]='bla bla bla';
    gtext [2]='bla bla bla';
    gtext [3]='bla bla bla';
    gtext [4]='bla bla bla';
    
    
    	// Generate Overlays
           for (i=0; i<punti.length; i++){
                var marker = createMarker(punti[i],gtext[i]);
                map.addOverlay (marker);
                // Add Routes
           }
    
      }
      
     function createMarker(point, html) {
    		// definisco un array chiamato icons.
            var icons = [];
            // assegna alla variabile icons["topix"] tramite
            // la funzione GIcon l'immagine "miaicona.png"
            icons["topix"] = new GIcon(G_DEFAULT_ICON, "new_marker.png");
            // invio alla funzione che crea il Marker come secondo
            // valore la variabile dell'icona
            var marker = new GMarker(point,icons["topix"]);
            GEvent.addListener(marker, "click", function() {
              marker.openInfoWindowHtml(html);
            });
          
            return marker;
     }

  2. #2
    ciao, prova così:

    codice:
    function createMarker(point, html) {
    		// definisco un array chiamato icons.
            var icons = [];
            // assegna alla variabile icons["topix"] tramite
            // la funzione GIcon l'immagine "miaicona.png"
            if(point!=punti[2])
             icons["topix"] = new GIcon(G_DEFAULT_ICON, "new_marker.png");
            else
             icons["topix"] = new GIcon(G_DEFAULT_ICON, "new_marker2.png");
            // invio alla funzione che crea il Marker come secondo
            // valore la variabile dell'icona
            var marker = new GMarker(point,icons["topix"]);
            GEvent.addListener(marker, "click", function() {
              marker.openInfoWindowHtml(html);
            });
    saluti

  3. #3

    Re: Differenziare marker google maps

    Originariamente inviato da Giubass
    Ciao ragazzi, utilizzo lo script sottostante per la generazione e la relativa visualizzazione di marker nelle mie mappe, come potete notare non utilizzo il marker di default bensì un icona da me creata.
    Adesso avrei l'esigenza di creare un'altra icona e di assegnarla ad un altro punto della mappa in modo tale da differenziare uno o più marker della stessa mappa, visto che lo script in questione cicla tutti i punti dell'array e assegna lo styesso marker, come potrei fare se ad esempio volessi cambiare solo il marker punti [2] ?

    Grazie

    codice:
    function addGMapOverlays(map) {
     var punti = new Array(); 
     var gtext = new Array();
    
    map.setCenter( new GLatLng(37.509726,14.111938), 8);
    
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    
    punti [0]= new GLatLng (36.731103,14.840968); 
    punti [1]= new GLatLng (36.949702, 14.535504); 
    punti [2]= new GLatLng (36.9590140541446, 14.53765869140625); 
    punti [3]= new GLatLng (37.14714789245618, 14.395909309387207); 
    punti [4]= new GLatLng (37.112079, 13.933596); 
    
     
    gtext [0]='bla bla bla';
    gtext [1]='bla bla bla';
    gtext [2]='bla bla bla';
    gtext [3]='bla bla bla';
    gtext [4]='bla bla bla';
    
    
    	// Generate Overlays
           for (i=0; i<punti.length; i++){
                var marker = createMarker(punti[i],gtext[i]);
                map.addOverlay (marker);
                // Add Routes
           }
    
      }
      
     function createMarker(point, html) {
    		// definisco un array chiamato icons.
            var icons = [];
            // assegna alla variabile icons["topix"] tramite
            // la funzione GIcon l'immagine "miaicona.png"
            icons["topix"] = new GIcon(G_DEFAULT_ICON, "new_marker.png");
            // invio alla funzione che crea il Marker come secondo
            // valore la variabile dell'icona
            var marker = new GMarker(point,icons["topix"]);
            GEvent.addListener(marker, "click", function() {
              marker.openInfoWindowHtml(html);
            });
          
            return marker;
     }
    Ciao scusa, mi fai vedere in maniera completa come hai fatto a visualizzare più marker nella mappa?

  4. #4
    Utente di HTML.it L'avatar di Giubass
    Registrato dal
    Oct 2003
    Messaggi
    169
    Originariamente inviato da moaiamorfo
    ciao, prova così:

    codice:
    function createMarker(point, html) {
    		// definisco un array chiamato icons.
            var icons = [];
            // assegna alla variabile icons["topix"] tramite
            // la funzione GIcon l'immagine "miaicona.png"
            if(point!=punti[2])
             icons["topix"] = new GIcon(G_DEFAULT_ICON, "new_marker.png");
            else
             icons["topix"] = new GIcon(G_DEFAULT_ICON, "new_marker2.png");
            // invio alla funzione che crea il Marker come secondo
            // valore la variabile dell'icona
            var marker = new GMarker(point,icons["topix"]);
            GEvent.addListener(marker, "click", function() {
              marker.openInfoWindowHtml(html);
            });
    saluti
    Grazie tanto, funziona!

  5. #5
    Originariamente inviato da Giubass
    Grazie tanto, funziona!
    Scusa l'ignoranza, ma come faccio ad integrarlo nella pagina?

  6. #6
    Scusate ma come faccio a caricare le funzioni nel codice html?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.