OpenGeoData Italia 2014 - Emanuele Geri "Secondo modulo del corso: esperienza...
OpenGeoData Italia 2014 Fabio Rinnone e Gianfranco Di Pietro “Come costruire una APP con i dati geografici”
1. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Web-Mobile-GIS e Open Data geografici
Due casi di studio pratici
Dott. Ing. Gianfranco Di Pietro
Dott. Fabio Rinnone
Geofunction Srls
Via L. Sturzo 71
93015 Niscemi CL, Italia
Conferenza OpenGeoData Italia "Istruzioni per il RI-uso"
Roma, 27 febbraio 2014
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
2. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Outline
1
Introduzione
Cos’è un WebGIS?
Limiti dei WebGIS
2
Web-Mobile-GIS
3
Realizzare un Web-Mobile-GIS
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
4
Casi di studio
local_id
MobileMap Enna
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
3. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Cos’è un WebGIS?
Limiti dei WebGIS
Outline
1
Introduzione
Cos’è un WebGIS?
Limiti dei WebGIS
2
Web-Mobile-GIS
3
Realizzare un Web-Mobile-GIS
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
4
Casi di studio
local_id
MobileMap Enna
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
4. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Cos’è un WebGIS?
Limiti dei WebGIS
Cos’è un WebGIS?
Definiamo WebGIS l’estensione web degli applicativi nati e
sviluppati per gestire la cartografia numerica.
La principale finalità del WebGIS è la comunicazione e la
condivisione con altri utenti delle informazioni georiferite.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
5. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Cos’è un WebGIS?
Limiti dei WebGIS
Outline
1
Introduzione
Cos’è un WebGIS?
Limiti dei WebGIS
2
Web-Mobile-GIS
3
Realizzare un Web-Mobile-GIS
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
4
Casi di studio
local_id
MobileMap Enna
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
6. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Cos’è un WebGIS?
Limiti dei WebGIS
Limiti dei WebGIS
La recente forte spinta verso i sistemi mobile, dovuta alla
neonata necessità di condividere e scambiare le informazioni
ovunque ci si trovi e non necessariamente attraverso una
postazione fissa, confluisce nella necessità di sviluppare
applicati orientati a dispositivi mobile.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
7. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Il Web-Mobile-GIS
Un Web-Mobile-GIS è un applicativo software per la
consultazione in situ su dispositivi di tipo mobile di largo
consumo (smarthpone e tablet) dotati di sensore GPS e
connessione ad internet.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
8. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Il processo di realizzazione di un Web-Mobile-GIS comporta le
seguenti fasi:
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
9. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Outline
1
Introduzione
Cos’è un WebGIS?
Limiti dei WebGIS
2
Web-Mobile-GIS
3
Realizzare un Web-Mobile-GIS
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
4
Casi di studio
local_id
MobileMap Enna
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
10. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Pre-elaborazione dei dati
I dati spaziali e geografici, provenienti da fonti diverse e aventi
datum differenti, sono opportunamente trasformati per un
utilizzo GIS ready.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
11. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Outline
1
Introduzione
Cos’è un WebGIS?
Limiti dei WebGIS
2
Web-Mobile-GIS
3
Realizzare un Web-Mobile-GIS
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
4
Casi di studio
local_id
MobileMap Enna
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
12. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Esportazione dei dati
Successivamente alla fase di pre-elaborazione i dati sono
esportati in svariati formati.
Formati di rappresentazione basati su XML:
KML: Keyhole Markup Language
GML: Geography Markup Language
Formati testuali adatti all’importazione in DBMS:
CSV: Comma-separated Values
SQL: Structured Query Language
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
13. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Keyhole Markup Language
Linguaggio basato su XML sviluppato da Keyhole, Inc.
(acquisita da Google nel 2004)
Usato per la gestione dei dati spaziali su Google Earth e
Google Maps
Standard aperto riconosciuto dall’OGC (Open Geospatial
Consortium)
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
14. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Outline
1
Introduzione
Cos’è un WebGIS?
Limiti dei WebGIS
2
Web-Mobile-GIS
3
Realizzare un Web-Mobile-GIS
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
4
Casi di studio
local_id
MobileMap Enna
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
15. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
Implementazione
La terza fase consiste nell’implementazione dell’app per
dispositivi mobile.
Le strategie di implementazione possono essere differenti:
Web-app: sviluppata interamente con tecnologie web
(HTML, Javascript, CSS) ed orientata all’utilizzo mediante i
browser integrati nei dispositivi mobile.
App ibrida: sviluppata con tecnlogie web, installabile ed
eseguibile nativamente sui principali devices (Android,
iOS, Windows Phone, etc.)
App nativa: sviluppata specificatamente per un sistema
operativo mobile, utilizzando uno dei linguaggi di
programmazione supportati dal particolare sistema
operativo
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
17. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Outline
1
Introduzione
Cos’è un WebGIS?
Limiti dei WebGIS
2
Web-Mobile-GIS
3
Realizzare un Web-Mobile-GIS
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
4
Casi di studio
local_id
MobileMap Enna
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
18. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
local_id
Where is your local identity?
local_id è un app per dispositivi Android che permette di
valutare le performances urbanistiche e territoriali di aree
metropolitane al fine di individuare la zona ideale secondo le
aspettative dell’utente.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
19. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
La versione 0.1 dell’applicazione contiene i dati del
Comune di Milano estrapolati dal portale dati.comune.
milano.it.
Per le analisi territoriali sono state sfruttate le mappe di
OpenStreetMap
I dati acquisiti ed elaborati sono rappresentati in mashup
con le mappe di Google, contenenti i Punti di Interesse e il
rating della zona in base alle proprie aspettative
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
20. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Geo-dati usati
Superfici ZTL
Aree di fruizione per cani
Playgrounds
Orti comunali e didattici
Associazioni culturali
Biblioteche ed archivi
Centri di aggregazione giovanile
Centri di aggregazione multifunzionali
Altezza edifici
Popolazione residente
Scuole (primarie, secondarie, etc.)
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
21. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Geo-dati usati
Cinema
Edicole
Farmacie
Stazioni ferroviarie
Impianti sportivi
Musei e spazi espositivi
Asili nido
Parcheggi di interscambio
Piscine
Sedi università
etc.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
23. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Come funziona
I valori di input che l’utente inserisce sono le proprie aspettative
di NIL (nucleo di identità locale) ideale in termini di
Sport: fare sport in centri sportivi, piscine e parchi pubblici
Cultura: presenza di cinema, musei, teatri, e sedi per le
attività culturali
Accessibilità: possibilità di accesso con i mezzi pubblici,
collegamenti e fruibilità
Tempo libero: presenza di diverse occasioni per il tempo
libero
Natura: un nucleo con tanto verde ed ecosostenibilità
Istruzione: presenza di scuole e istruzione
Vivibilità: nucleo urbanisticamente accogliente
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
24. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Spatial Analysis
Per ogni zona NIL sono calcolate attraverso algoritmi GIS le
seguenti informazioni territoriali:
Presenza e consistenza dei servizi (aggregazione di info
puntuali)
Analisi demografica della popolazione, attraverso i dati
degli edifici (area, altezza, etc.) per ricavare le densità
abitative
Superfici disponibili per abitante (parchi giochi, zone verdi,
etc.)
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
25. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
NIL Rating Analysis
È stato implementato un algoritmo di calcolo per il rating
personalizzato del NIL che prevede la predisposizione di
apposite matrici per i dati e di un vettore per i 7 parametri di
input (le aspettative del NIL ideale).
Successivamente vengono analizzate linearmente le
performance dei singoli NIL e vengono calcolati punteggi pesati
in base alle esigenze di input.
Il punteggio finale è un vettore che viene utilizzato per il rating
comparativo tra le zone.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
30. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Implementazione
MySQL with Spatial Extensions
JSON Parser (written in Java)
Google Maps Android API v2
JTS Java Topology Suite
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
31. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
MySQL with Spatial Extensions
RDBMS (Relational Database Management System)
proprietà della Oracle Corporation
Supporta estensioni spaziali per consentire la generazione,
la conservazione e l’analisi di informazioni spaziali
Gli elementi spaziali gestibili possono essere punti, linee e
poligoni
La rappresentazione dei dati spaziali è in formato WKT
(Well Known Text)
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
32. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Well Known Text
WKT è un linguaggio creato per rappresentare oggetti
geometrici (punti, linee, poligoni, ma anche poliedri) e
multi-geometrie, ovvero collezioni di singole geometrie.
Geometry
Point, MultiPoint
LineString, MultiLineString
Polygon, MultiPolygon, Triangle
CircularString
Curve, MultiCurve, CompoundCurve
CurvePolygon
Surface, MultiSurface, PolyhedralSurface
TIN
GeometryCollection
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
33. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Well Known Text
POINT(6 10)
LINESTRING(3 4,10 50,20 25)
POLYGON((1 1,5 1,5 5,1 5,1 1),(2 2, 3 2, 3 3,
2 3,2 2))
MULTIPOINT(3.5 5.6,4.8 10.5)
MULTILINESTRING((3 4,10 50,20 25),(-5 -8,-10
-8,-15 -4))
MULTIPOLYGON(((1 1,5 1,5 5,1 5,1 1),(2 2, 3 2,
3 3, 2 3,2 2)),((3 3,6 2,6 4,3 3)))
GEOMETRYCOLLECTION(POINT(4 6),LINESTRING((4
6,7 10)))
POINT ZM (1 1 5 60)
POINT M (1 1 80)
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
34. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
JSON Parser
JSON (JavaScript Object Notation) è un linguaggio basato
su Javascript usato per lo scambio di dati tra client e
server.
Occorre implementare un parser Java per la gestione dei
dati in formato JSON
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
35. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Google Maps Android API v2
Framework per l’integrazione delle mappe di Google su
applicativi nativi Android
Le API gestiscono autonomamente l’accesso ai server di
Google Maps
Consentono di aggiungere ad una mappa:
Icone ancorate in specifiche posizioni sulla mappa
(Marker)
Linee (Polyline)
Poligoni (Polygon)
Immagini sovrapponibili alla mappa di base (Tile
Overlays)
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
36. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
JTS Java Topology Suite
Framework open source, sviluppato da Vivid Solutions in
linguaggio Java
Fornisce un insieme di API per la gestione di geometrie 2D
Tramite la classe WKTParser permette il parsing di
stringhe WTK
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
37. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
DBMS
MySQL è la scelta migliore? Alternative:
PostgreSQL with PostGIS (Virtual server needed!)
SQLite with Spatialite (Android NDK needed!)
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
38. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Outline
1
Introduzione
Cos’è un WebGIS?
Limiti dei WebGIS
2
Web-Mobile-GIS
3
Realizzare un Web-Mobile-GIS
Pre-elaborazione dei dati
Esportazione dei dati
Implementazione dell’app
4
Casi di studio
local_id
MobileMap Enna
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
39. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
MobileMap Enna
MobileMap Enna è un’app per dispositivi Android che
permette di consultare ed interrogare su smartphone e tablet le
cartografie e i datasets istituzionali della Provincia Regionale di
Enna.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
40. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Livelli consultabili
Carte Natura: tipi di paesaggio, unità di paesaggio
Carta dell’intervisibilità del territorio
Cave attive
Densità di popolazione (2011)
Distretti turistici e tematici
Farmacie
Impianti eolici
Impianti fotovoltaici
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
41. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Livelli consultabili
Modello digitale del terreno (DTM)
Patrimonio archeologico storico-architettonico
Rete ospedaliera
Rete trazzerale
Rilievo 3D
Rete stradale provinciale
Siti Unesco 2012 (by Min. B.A.C.)
etc.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
48. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Implementazione
Due strategie differenti di implementazione:
Web-app accessibile da browser
App ibrida per dispositivi Android
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
49. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Web-app
Sviluppata interamente con tecnologia web
Accessibile da qualunque browser per dispositivi mobile
Compatibile con la maggior parte dei sistemi operativi
mobile (Android, iOS, Windows Phone, etc.)
Accessibile tramite URL o QR Code
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
50. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Framework utilizzati
Per lo sviluppo della web-app sono state utilizzate le seguenti
tecnologie web:
OpenLayers
JQuery Mobile
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
51. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
OpenLayers
Libreria implementata in linguaggio Javascript, rilasciata in
licenza open BDS 2-Clause License, che permette di
visualizzare mappe interattive in browser web, consentendo di
accedere, attraverso apposite API, a fonti di informazioni
geografiche presenti in rete:
WMS: Web Map Service
WFS: Web Feature Service
Google Maps
Bing Maps
OpenStreetMap
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
52. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
JQuery Mobile
Framework touch-optimized, implementato in linguaggio
Javascript, derivato da JQuery
Rilasciato in licenza MIT
Ottimizzato dispositivi mobile
Supporta la creazione di temi grafici personalizzati
Progettato per la costruzione di interfacce user-friendly
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
53. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
App ibrida
Versione dell’applicazione sviluppata sia con tecnologia web
che nativamente.
L’applicazione ibrida ha le seguenti caratteristiche:
Sviluppata, in linguaggio Java, per dispositivi Android
Android SDK, API Level 8 (Froyo, 2.2.2)
Interfaccia web implementata con OpenLayers e
JQueryMobile
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
54. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Apache Cordova
Framework open source, distribuito in licenza Apache 2.0
derivato da PhoneGap.
Si presenta come una sorta di contenitore di
un’applicazione web: la sua interfaccia è una WebView
che occupa l’intero schermo del dispositivo, all’interno
della quale è eseguito il codice HTML e Javascript della
risorsa web.
Consente l’interfacciamento del codice Javascript
dell’interfaccia web, con le componenti native del
dispositivo Android, in questo caso con il sensore GPS.
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
55. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Sviluppi futuri
Implementazione nativa su piattaforma Android (già
realizzata per MobileMap Agrigento)
Funzionalità di realtà aumentata mediante la libreria open
source Mixare
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
56. Introduzione
Web-Mobile-GIS
Realizzare un Web-Mobile-GIS
Casi di studio
local_id
MobileMap Enna
Realtà aumentata
Mixare è un motore di realtà aumentata open source. Ha le
seguenti caratteristiche:
Rilasciato in licenza GPLv3
Multipiattaforma (Android, iOS)
Applicazione stand-alone
Integrabile come libreria in app Android
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici
57. Bibliografia
Bibliografia I
Di Pietro G., Rinnone G.
Web-mobile-GIS, la nuova frontiera di pubblicazione dei
dati cartografici.
Biallo G. (eds.)Dati geografici aperti - Istruzioni l’uso.
Associazione OpenGeoDataItalia, Roma. 2013.
Open Data Territorio Enna.
http://www.opendataterritorioenna.it
local_id: Where is your local identity.
http://www.slideshare.net/geofunction/
localid
Di Pietro, Rinnone
Web-Mobile-GIS e Open Data geografici