![]()
Va avanti la guida sulle API di Google Maps, dopo i due capitoli precedenti, vedremo finalmente come ottenere le coordinate(longitudine e latitudine), connettendoci ai server di Google.
Questo processo è il Geocoding ed è una delle funzionalità che utilizzerete più spesso.
I metodi sono due : uno un po’ più “grezzo”e a tentoni, che preferirei evitare, anche se il più rapido e meno preciso, oppure sempre attraverso le API.
Il metodo “grezzo” consiste nel cercare un indirizzo tramite Google Maps, cliccare su Link e poi copiare la stringa da includere nell’ HTML.
La stringa, simile a questa :
<iframe width=”425″ height=”350″ frameborder=”0″ scrolling=”no”
marginheight=”0″ marginwidth=”0″ src=”http://maps.google.it/maps?f=q&source=s_q&hl=it∓geocode=&q=milano&sll=41.442726,12.392578&sspn=19.808149,38.671875&a
mp;ie=UTF8&ll=45.520782,9.221649&spn=0.341602,0.700378&t=h&a
mp;z=11&iwloc=A&output=embed”></iframe><small><a href=”http://maps.google.it/maps?f=q&source=embed&hl=it&geocode=&q=milano&sll=41.442726,12.392578&sspn=19.808149,38.671875&ie=UTF8&ll=45.520782,9.221649&spn=0.341602,0.700378&t=h&z=11&iwloc=A” style=”color:#0000FF;textalign:left”>Visualizzazione ingrandita della mappa</a></small>
All’interno dell’attributo src del tag iframe, verso la fine, si può notare la stringa ll=45.520782,9.221649 , queste sono le coordinate del luogo, tuttavia bisognerà metterle a punto in quanto molto imprecise.
Il metodo che utilizza le API per ottenere le coordinate utilizza la classe GClientGeocoder e la funzione getLatLng(indirizzo, funzione di ritorno in caso di errore).
La classe GClientGeocoder gestisce una connessione con il server di Google.
La funzione getLanLng vuole un indirizzo del tipo “via dei pioppi, 20, 37000,Milano”, e una funzione per gestire il punto trovato.
Facciamo un esempio:
Function initialize(){
if (GBrowserIsCompatible()) {
var address=“Via dei pioppi, 20, Milano”;
var map = new GMap2(document.getElementById(“map_canvas”));
var geocoder = new GClientGeocoder();
geocoder.getLatLng(address,function(point) {
if (point) {
map.setCenter(point, 13);
} else {
alert(address + Non trovato o duplicato”);
}
});
map.setUIToDefault();
}
}
Viene istanziata una nuova classe GClientGeocoder() nella variabile geocoder.
Ora passiamo alla funzione getLatLng() l’indirizzo e la funzione per gestire il punto ottenuto.
Se esiste il punto viene centrata la mappa su di esso, altrimenti si stampa un errore.
Come ultima istruzione settiamo l’interfaccia grafica di default.
Per vedere un altro esempio clicca qui .
Guida alle API di Google Maps – Capitolo 3 – Come ottenere le coordinate
| Come ottenere le coordinate |










Iscriviti al feed di Good2know