Controlli
Avere una mappa è sicuramente interessante, ma poterla navigare rende ancora più utile la sua fruizione. Google Maps mette a disposizione dei controlli predefiniti per farlo. Il metodo che permette di aggiungerli è:
map.addControl( quale );
La lista dei possibili controlli è sintetizzata nella tabella 1. Ciascun controllo è un oggetto che va creato e assegnato come parametro al metodo precedente.
Tabella 1: controlli predefiniti di una mappa
GLargeMapControl
Inserisce, sulla sinistra, un controllo che permette sia di sostare in una direzione qualsiasi, sia di aumentare o diminuire lo zoom.
 |
GSmallMapControl
Come il precedente, ma più piccolo
e compatto.
 |
GSmallZoomControl
Due soli pulsanti: uno per aumentare lo zoom
e uno per diminuirlo.
 |
GScaleControl
Posiziona in basso la scala (una in miglia, secondo lo standard americano, e una in chilometri).
 |
GMapTypeControl
Posiziona in alto a destra diversi pulsanti, uno per ciascun tipo di mappa (normale, satellitare e ibrida). Facendovi clic sopra, l’immagine viene ricaricata nella modalità scelta.
 |
GOverviewMapControl
Posiziona in basso a destra un riquadro a uno zoom più elevato per agevolare la navigazione su parti molto distanti rispetto alla mappa visualizzata.
 |
I diversi controlli si possono anche integrare tra loro. Per esempio, inserendo:
map.addControl(new GOverviewMapControl());
map.addControl(new GMapTypeControl());
map.addControl(new GLargeMapControl());
si ottiene l’immagine di figura 5.

Figura 5: la mappa con i controlli per la navigazione
Come si è detto, ciascun controllo ha una sua posizione predefinita; però, tale posizione può essere variata. Per farlo, va usata una delle costanti tra G_ANCHOR_TOP_RIGHT (alto a destra), G_ANCHOR_TOP_LEFT (alto a sinistra), G_ANCHOR_BOTTOM_RIGHT (in basso a destra) o G_ANCHOR_BOTTOM_LEFT (in basso a sinistra). Questa costante va specificata come secondo parametro del costruttore dell’oggetto GControlPosition e l’oggetto così costruito va passato alla funzione addControl come secondo parametro:
map.addControl(
new GOverviewMapControl(),
new GControlPosition(G_ANCHOR_TOP_LEFT)
);
L’oggetto GControlPosition può, a sua volta, avere un secondo parametro, di tipo GSize, che rappresenta l’offset relativo alla posizione specificata dal primo parametro. Così, il seguente esempio posiziona il controllo in alto a sinistra, ma spostato di 100 pixel a destra:
map.addControl(
new GOverviewMapControl(),
new GControlPosition( G_ANCHOR_TOP_LEFT, new GSize(100,0) )
);
Il risultato complessivo è mostrato in figura 6.

Figura 6: la mappa con i controlli per la navigazione
|