Cerca nel blog

Pubblicità

banner-125x125 banner-125x125 banner-125x125 banner-125x125

Feed RSS e Newsletter

Puoi seguire il mio blog abbonandoti al feed RSS, se non sai cos'è un feed RSS prova a guardare questo video... Spiega tutto!

Icona Feed RSS

Twitter

PayPal

Se ti piace questo blog puoi pensare ad una donazione.

Tutti i fondi ricevuti saranno utilizzati per il mio sollazzo personale. :-)

Ultimi commenti...

Teo: Napolux ha scritto: Però se lo scrivi sul contratto che il cliente firma immagino sia legale Non so quanti...

Napolux: Teo ha scritto: In pratica devi inserire il codice che ti propone nelle pagine web che generi e se non ti...

Teo: In pratica devi inserire il codice che ti propone nelle pagine web che generi e se non ti paga lo blocchi?...

Teo: Occhio gente, secondo me arriva dritta dritta una denuncia ad usarlo… Ma, in pratica, come agisce?? :razz:

Teo: Sbronzo di Riace ha scritto: io dico che bisognerebbe fare un decreto interpretativo sulla questione e già che...

Usare Google Maps – Prima parte

mercoledì 30 agosto 2006
1 Star2 Stars3 Stars4 Stars5 Stars (12 voti, media: 4,58)
Loading ... Loading ...

Google Maps è davvero una cosa utile. Oramai ci si sta sviluppando sopra qualsiasi tipo di servizio: dal geomarketing ai servizi di monitaraggio del traffico... Insomma, cani e porci stanno utilizzando queste API.

:mrgreen:

Visto che tra cani e porci molti (me compreso) ci si trovano bene, oggi vediamo, partendo dal solito principio del "Perché non posso usare (roba a caso) nella mia fichissima Web Application?" citato qui, come poter anche noi utilizzare tutta la potenza di Google Maps, creando da zero una mappa in cui poter inserire dei markers a nostro piacimento.

I markers li posizioneremo correttamente (a seconda delle città sarà possibile addirittura specificare il numero civico della via) grazie al GeoCoder di Google Maps. Ogni marker conterrà un breve testo descrittivo.

Per questo tutorial si utilizzerà la versione 2 delle API, che include un comodo GeoCoder. Servono anche una manciata di PHP e un database MySQL che andrà a contenere le coordinate e i testi descrittivi di ogni marker.

Se proprio vogliamo fare i fighi facciamo tutti gli inserimenti via AJAX, generando al volo il JavaScript che piazza i markers sulla pagina senza farne il refresh. Ma sì, siamo fighi, facciamolo.

Il progetto prende (nel mio caso) il nome di NapoMaps per personalizzarlo un pochino chiamatelo quellochevipareMaps.

Andiamo per ordine però, facendo finta che sia la prima volta in vita nostra che usiamo Google Maps: alla fine di questa prima parte avremo creato una mappa, puntata sull'Italia, con un bel pop-up che punterà alla capitale.

Banale, ma da qualche parte si deve pur cominciare. "E si va!" Come diceva ai bei tempi J. AX degli Articolo 31.

Sì sono logorroico. Lo so.

P.s. Il tutto sarà validato xHTML 1.0 STRICT. Giusto per complicarci un po' la vita. Non è roba per i deboli di cuore.

OTTENERE UNA GOOGLE MAPS API KEY

Per poter utilizzare Google Maps all'interno del proprio sito web è necessario ottenere una Google Maps API Key, richiedendola direttamente a Google.

La chiave vale per un'intera directory su un dominio: se la richiedere per dominio.ext non varrà per dominio.ext/cartella/ e viceversa. Quindi sappiatevi regolare, o recuperate più chiavi per ogni sottocartella del dominio che andrete ad utilizzare.

Le chiavi sono gratuite. L'unico limite sono le richieste orarie al GeoCoder (traduce indirizzi in coordinate LAT - LONG), introdotto dalla versione 2 delle API. 50.000 richieste / ora giorno (grazie a Epper) dovrebbero però bastare a chiunque non voglia offrire un servizio professionale.

IMPOSTARE LA VOSTRA PRIMA PAGINA

Google offre un esempio di come dovrebbe essere una pagina contenente una Google Maps. Copiatela impunemente, ricordandovi di inserire la vostra chiave.

Allineate al centro della pagina la mappa, e decorate un po' la pagina. Anche l'occhio vuole la sua parte.

CENTRARE LA MAPPA

La funzione load() che avete copiato dall'esempio di Google crea la mappa nella "DIV" che ha come id "map".Il codice non è complicato, sbirciate il sorgente dell'esempio che troverete linkato alla fine di questa prima parte, dovrebbe essere facilmente comprensibile.

Vogliamo centrare la carta sull'Italia, quindi utilizziamo la funzione map.setCenter() che accetta due parametri:

  • Un punto sulla mappa
  • Il livello di zoom

Il punto viene creato usando la funzione GLatLng() che accetta a sua volta due parametri: latitudine e longitudine del punto, in formato decimale. Per recuperare i dati della vostra città preferita usate siti web come MapoRama. Nel caso di Roma le coordinate sono: 41.90, 12.49.

La funzione da scrivere, impostando un livello di zoom pari a 5 sarà quindi:

map.setCenter(new GLatLng(41.90, 12.49), 5);

I CONTROLLI

Ok, abbiamo centrato la mappa e possiamo navigare con il mouse... Come facciamo a visualizzare i controlli? Niente di più semplice.

map.addControl(new GMapTypeControl());

Attiva il controllo che permette di selezionare la mappa satellitare, solo stradale o ibrida.

map.addControl(new GLargeMapControl());

Attiva il controllo dello zoom e della navigazione... La classica barra a sinistra ;)

Per gli altri controlli si faccia riferimento alla documentazione ufficiale e alle prossime parti di questo tutorial.

IL POP-UP

Attraverso la funzione:

map.openInfoWindow(map.getCenter(), document.createTextNode("Roma!"));

Creiamo il pop-up sul centro della mappa, con testo "Roma!" map.getCenter() ritorna le coordinate del punto centrale della mappa.

CONCLUSIONI

Con una decina di righe di codice JavaScript abbiamo creato la nostra prima mappa, utilizzando le API Google Maps. Questa prima parte del tutorial è volutamente semplice e "verbosa", in modo da poter essere di facile comprensione.

Man mano che procederemo in questo tutorial (ci saranno almeno altre 3-4 parti, forse più), affronteremo aspetti diversi quali l'interfacciamento a database, il posizionamento di markers, ecc...

Ecco quanto dovreste essere riusciti a fare oggi: prima parte.

Il codice come al solito è ben commentato e di facile lettura. Comunque, per qualsiasi chiarimento, dubbio o annotazione lasciate un commento, sono sempre ben accetti.

Il tutorial sarà disponibile in formato PDF appena concluso, comprenderà tutte le modifiche e i suggerimenti ricevuti.

Questo articolo è stato pubblicato mercoledì, 30 agosto 2006 alle ore 16:29 Se non vuoi perdere nemmeno un articolo del mio blog abbonati al feed RSS. Se non sai cos'è un feed RSS puoi guardare questo video, spiega tutto!

In alternativa puoi abbonarti alla newsletter, riceverai un'email ogni volta che verrà pubblicato un nuovo post. Il tuo indirizzo email sarà gestito da Feedburner.

  

28 Commenti a “Usare Google Maps – Prima parte”

  1. Epper scrive:

    Ben fatto…

    Devo proprio usare GoogleMaps per un progetto a breve, ora mi sono fatto una idea di come funziano ;)

    P.S.
    Il limite di richieste è 50.000 richieste al giorno. Non all’ora ;)

  2. Napolux scrive:

    Correggo subito :D

    Grazie e a presto x la prossima puntata ;)

  3. Delfins scrive:

    Ottimo tutorial,semplice ma completo. attendo con ansia la seconda parte ;-)
    I miei complimenti

  4. Napolux.com :: AJAX, Web 2.0, Blog, PHP, MySQL, JavaScript, xHTML, XML » Usare Google Maps - Seconda parte scrive:

    [...] Come promesso rieccoci per la seconda parte del tutorial su Google Maps. La prima parte del tutorial è disponibile a questo indirizzo. [...]

  5. Usare Google Maps - Terza parte :: Napolux.com scrive:

    [...] Eccoci qua. Prima di cominciare, a chi non lo avesse ancora fatto, consiglio di leggere le prime due parti di questo tutorial. Usare Google Maps – Prima parte [...]

  6. Tom scrive:

    Ottima guida, anche nelle sue parti seguenti. Ho già realizzato qualche prova con le API di GoogleMaps, ma adesso mi hai offerto spunti interessanti :)

  7. Simone Rodriguez scrive:

    Vorrei fare un appunto: mi è capitato di chiedere un key per un la root di un dominio ma funziona benissimo anche su una sua sottocartella.

  8. A chi serviva il PDF? :: Napolux.com scrive:

    [...] Prima parte [...]

  9. Ale scrive:

    ciao,
    complimenti per questo tutorial
    vorrei inserire una maps che mi faccia vedere direttamente una città e non tutta l’italia…come posso fare?
    mi piacerebbe avere la versione ibrida e satellite oltre alla classica
    grazie e ancora comilmenti

  10. Napolux scrive:

    @Ale
    Per quanto riguarda il centrare una città o una via guarda qui. Poi basterà giocare un po’ sullo zoom.

    Per visualizzare in partenza la mappa ibrida o satellitare, invece guarda la documentazione ufficiale per la funzione setMapType() ;)

  11. carlo scrive:

    complimenti per il tutorial…
    in realtà le mie esigenze sono molto più misere…
    e non ho ben capito come fare ad implementare il pop up con l’indirizzo del luogo da segnalare sull’eventuale mappa..
    (un indirizzo completo e non solo il nome della città)

    grazie
    carlo

  12. Napolux scrive:

    @Carlo Leggi la seconda e terza parte del tutorial ;)

  13. loly scrive:

    ciao,

    nn ho mai usato google map e volevo sapere se si può utilizzare il geocoding in una classe java normale, cioè niente pagina web con javascrip.
    Come mi connetto a google?? devo includere delle librerie o altro??

    grazie saluti!

  14. Napolux scrive:

    @loly
    Penso che si possa fare, ma sicuramente violerebbe le licenze di Google Maps.

    Ci sono molti geocoder gratuiti in giro, cerca su Google ;)

  15. loly scrive:

    ti ringrazio!! ciao

  16. StoneBlog - CSS e web 2.0 » Mappe di Google: 3 guide all’utilizzo scrive:

    [...] Le Google Maps sono strumenti molto potenti e, per piccole o medie realtà, gratuiti. A questo proposito vi segnalo l’ottima  guida suddivisa in 3 parti di Napolux. A questa pagina invece potete ottenere le api e consultare la documentazione ufficiale (in inglese) Buona lettura! [...]

  17. » Programmazione e blog: Intervista a Napolux - Blographik - Grafica, web Design e video editing scrive:

    [...] Un altro articolo che ha avuto un buon successo è stato il tutorial in tre parti sull’utilizzo di Google Maps e del suo Geocoding. [...]

  18. Valerio scrive:

    ciao,
    h un problema ….ho ottenuto una key ma poi mi dice che è già stata assegnata ad un altro ito…che devo fare???

  19. Napolux scrive:

    @Valerio
    Generane una nuova e controlla che il sito che inserisci corrisponda a quello su cui andrai a lavorare ;)

  20. seo scrive:

    Ottima guida, anche nelle sue parti seguenti. Ho già realizzato qualche prova con le API di GoogleMaps, ma adesso mi hai offerto spunti interessanti :mrgreen: :mrgreen: :mrgreen:

  21. gry scrive:

    Vorrei fare un appunto: mi è capitato di chiedere un key per un la root di un dominio ma funziona benissimo anche su una sua sottocartella. :roll: :roll:

  22. Francesco scrive:

    ho seguito i vari passi e fin’ora tutto bene

    grazie.

  23. Massimo scrive:

    Mizziga… con uno script sbagliato mi sono mangiato 50.000 visualizzazioni in 1 minuto…..
    Adesso a livello di IP non mi fa accedere neanche al sito googleMap!!!

  24. Gian Marco Artioli scrive:

    SISTEMA AUTOMATICO PER OTTENERE IL GEOCODING DI UN INDIRIZZO

    google mette a disposizione uno script che genera in vari formati (xml, kml, csv, or json.) un file di esportazione che dato un indirizzo ne fa il geocoding ritornando latitudine e longitudine. qui il link alla documentazione:

    http://code.google.com/apis/maps/documentation/services.html#Geocoding

    personalmente trovo molto comodo il formato csv, sotto riporto un esempio di utilizzo

    $params = “http://maps.google.com/maps/geo?q=Via+Agnini,13,41012+Carpi+Modena,Emilia+Romagna,Italia&output=csv&key=TUOCODICE”;
    $csv_latitudine = file_get_contents($params);
    list( $http_status_code, $accuracy, $latitude, $longitude) = explode(“,”, $csv_latitudine);

  25. Cristiano scrive:

    Devo usare google map per fare delle cartine della zona di bucarest ma inserendo nello script bucarest e nome della zona a volte mi dà indirizzo non trovato es Bucureşti Baba Novac. Ma la cosa strana è che se vado su http://maps.google.it/ e inserisco Bucureşti Baba Novac me lo trova. come mai c’è un modo per risolvere il problema ?? Grazie

  26. jlenia scrive:

    Io sto usando google maps in locale. Ho inserito il codice javascript all’interno di una pagina HTML e la visualizzo bene su browser.
    Ho generatola key inserendo il dominio sotto il quale sto lavorando; poi ho inserito il mio codice dentro una jsp messa all’interno del mio application server ma compare il messaggio: “La chiave API di Google Maps utilizzata in questo sito è stat tregistrata per un altro sito…”.
    La domanda è:cosa dovrei mettere nell’indirizzo per generare la key, visto che io attualmente devo effettuare delle prove e visto che lavoro sotto dominio aziendale?

  27. jlenia scrive:

    Posso utilizzare Google Map Beta in un sito internet munito di autenticazione all’accesso(login)?

  28. Frank scrive:

    Ciao,ho letto e scaricato tutta la tua guida.
    La trovo molto interessante per chi è neofita di questo tipo di strumento.
    Ho iniziato ad inserire le mappa di google nei miei siti.
    Inizialmente non ho avuto problemi di sorta ma da un pò di giorni( credo dopo aver aggiornato mozilla firefox) ho riscontrato dei problemi di visualizzazione della mappa stessa.
    In IE 7 nessun problema, funziona perfettamente, ma in firefox al posto dell’immagine del marker viene fuori un quadrato grigio ed anche i controlli di zoom in alto a sinistra vengono fuori in grigio e non sono visualizzabili.

    Se vuoi dare un’occhiata gli url dei siti sono http://www.acquadimaresanvito.it/contatti.asp e http://www.ilvelierosanvito.com/contatti.asp.
    Mi sapresti dire qual è il problema?
    Ti ringrazio anticipatamente per la disponibilità e soprattutto per la guida.

    P.S. se trovi il problema potresti inviarmi una email?Grazie ancora