Indice

🟦Nuova 🟩Pronta 🟨Bozza 🟥Da scrivere

Mappe geografiche

Georeferenziare Entità e rappresentarle su una mappa con le Viste. Tradurre indirizzi in coordinate geografiche.
Aggiornata il:
Stato: 🟩Pronta

Georeferenziare una Entità

Le Entità selezionate con una Vista possono essere visualizzate non solo come un elenco o una tabella o una griglia, ma possono anche essere dislocate su una mappa geografica, grazie al modulo aggiuntivo "Geofield Map". Installato ed attivato questo modulo, avremo a disposizione il nuovo tipo di Campo Geofield in cui memorizzare le coordinate geografiche dell'Entità. Una volta aggiunto il Campo ad un tipo di Entità, il modo più semplice per scrivervi le coordinate è cercare la posizione geografica dell'Entità su una mappa e cliccarvi sopra.

Mappa → Geofield 

Con Geofield Map è possibile utilizzare Google Maps oppure Leaflet. Google Maps mette a disposizione di Geofield Map molte più opzioni, ma richiede una configurazione più complessa, in particolare occorre richiedere a Google un codice da inserire nel modulo, pone limiti sulla quantità di visualizzazioni (nella versione gratuita) e può porre problemi di riservatezza. Leaflet ha meno funzioni, ma utilizza le mappe gratuite di Openstreetmap, che non richiedono registrazioni o pagamenti e non condivide con terzi le informazioni della tua app. Per gli scopi di MieApp (e forse per la maggior parte delle tue app) Leaflet è più che adeguato. Le istruzioni che seguono fanno quindi riferimento a Leaflet. Anche se Geofield Map può utilizzare Leaflet per georeferenziare le Entità, non consente però poi di mostrarle in una Vista con una mappa Leaflet: per far ciò è necessario installare ed attivare anche il modulo aggiuntivo "Leaflet". 

Installati ed attivati questi moduli, vediamo come georeferenziare le Entità. Vediamo come esempio le Sedi della app "Vicinato":

Mostrare più Entità su una mappa

Per mostrare su una mappa le Entità georeferenziate, costruiamo una Vista che elenca le Entità su una Visualizzazione di tipo Mappa. 

Geofield → Mappa 

Come esempio, costruiamo la mappa delle Sedi della app "Vicinato": 

Ecco il risultato: cliccando sul fumetto di una icona si viene portati direttamente alla pagina di quella Entità. 

Georeferenziare le Entità tramite indirizzo

In alcune situazioni, georeferenziare una Entità cercandola visivamente su una mappa può essere scomodo o dare un risultato impreciso. Se si conosce l'indirizzo preciso dell'Entità, può risultare più comodo digitarlo e lasciare che sia Drupal a tradurre l'indirizzo in coordinate geografiche. A questo fine installiamo ed attiviamo i moduli aggiuntivi Geocoder e Address . Il modulo "Address" aggiunge il nuovo tipo di Campo Indirizzo in cui scrivere l'indirizzo, il modulo "Geocoder" provvede a interrogare uno dei servizi internet di traduzione degli indirizzi in coordinate e a memorizzarle in un Campo di tipo Geofield.

Indirizzo → Geocoder → Geofield  

Proseguendo nell'esempio delle Sedi, ecco tutti i passaggi necessari: