Markers personalizzati in Google Maps
Oggi era una di quelle serate in cui pensi: "Cazzo, vorrei scrivere qualcosa sul mio blog ma non trovo niente!". Il buon Fabio mi viene in soccorso, e con una simpaticissima email mi chiede: "Come faccio ad usare un marker personalizzato su Google Maps?"
Gli ho promesso un post e a casa mia le promesse si mantengono. Anche se al momento non ho la più pallida idea di come fare.
Siccome i bravi programmatori devono essere pigri e stupidi, riciclo bellamente l'esempio relativo alla seconda parte del tutorial su Google Maps: in quell'esempio viene piazzato un marker dopo una ricerca indirizzo andata a buon fine.
Andremo ad utilizzare al posto del solito marker di Google Maps un'icona scelta dal sottoscritto.
L'icona prescelta è questa:

Non si accettano commenti riguardanti l'icona scelta. Il file che farà da icona deve essere in formato PNG, possibilmente con uno sfondo trasparente, in modo da essere visualizzato correttamente sulla mappa.
In teoria dovrebbe essere accoppiato ad un altro file PNG che ne disegni l'ombra, ma in questo momento non ci serve.
Questo è tutto il codice che ci serve, da incollare appena dopo la creazione della mappa:
// Crea l'icona personalizzata icona = new GIcon(); icona.image = "marker.png"; icona.iconSize = new GSize(25, 34); icona.iconAnchor = new GPoint(12, 34); icona.infoWindowAnchor = new GPoint(21, 1); // Dati relativi all'ombra, che in questo caso non usiamo. //icona.shadow = ""; //icona.shadowSize = "";
Ecco fatto (Mi sento un pelo Muciaccia). Abbiamo creato un nuovo oggetto GIcon() che conterrà tutti i dati relativi all'icona. Gli attributi, nell'ordine in cui sono stati scritti contengono:
- L'indirizzo dell'immagine che farà da icona (anche su server diverso dal nostro)
- La dimensione in pixel
- Il punto dell'immagine che rappresenterà il punto esatto puntato dalla mappa
- Il punto dell'immagine da cui scaturirà il pop-up contenente le informazioni
Per maggiori dettagli fate riferimento alla documentazione della classe GIcon(). D'ora in poi ogni marker creato tramite la funzione:
new GMarker(point, icona);
avrà come immagine quella che abbiamo definito.
Come al solito ecco un bell'esempio. Sbirciare il codice per capire al meglio quanto scritto sopra.
Ringrazio 3 volte Fabio. Una volta perché legge il mio blog. Un'altra perché mi da l'occasione di imparare qualcosa. Un'altra ancora perché mi ha dato l'idea per questo post, dedicato a lui.
Articoli che potrebbero interessarti
A chi serviva il PDF?Google Maps statiche
Google Maps e Laigueglia (SV)
Tutorial: tabs in Google Maps
Arriva la mapplet di duespaghi.it






(3 voti, media: 3.67)
24 Ottobre 2006 alle 23:23
Grande Nap!! Ma che ora innaugurerai il nuovo servizio di post-on-demand? Ancora grazie!!
25 Ottobre 2006 alle 08:10
Mah, dipende dal post richiesto principalmente…
Potrebbe essere un’idea…
25 Ottobre 2006 alle 08:21
Scusa… Ma tu lavori in un’azienda che fa i siti x Cecchetto & Co. ?
^_^
25 Ottobre 2006 alle 13:58
“Lavoro in” non è esatto, e “azienda” è una parola grossa! eheheheh comunque si.. è mia
25 Ottobre 2006 alle 14:01
Complimentoni…
23 Agosto 2007 alle 12:40
Caro Napolux utilizzando le mie mappe di google maps non riesco ad esportare più di 100 segnalini (markers) perchè in google maps sono suddivisi in più pagine da 100 segnalini. MI POTRESTI AIUTARE
GRAZIE
CRISITAN
23 Agosto 2007 alle 13:45
Spiegati meglio…
26 Agosto 2007 alle 11:07
Grazie tante per i suggerimenti