Introduzione al progetto iter.net della Regione toscana e all'applicativo IterWeb: un webgis sviluppato per il Comune di Quarrata (PT, Aderente al progetto Iter.net) avente lo scopo di facilitare l'inserimento, la modifica e la concellazione dei dati geografici e alfanumerici legati al progetto Iter.net.
Un Web-GIS per i comuni della Valle della Cupa Realizzato in Ambiente Open So...
Gfossday Gis3w 2009 - IterWeb
1. Applicativo WebGis per
gestione ed editing
stradario e civici
Progetto Iter.Net Regione Toscana
Walter Lorenzetti, Leonardo Lami
Gis3W
Viale Verdi, 24 – 51016 Montecatini Terme (PT)
www.gis3w.it, @: info@gis3w.it
1
2. Il Progetto Iter.Net della
Regione Toscana
Il progetto Iter.Net vuole realizzare:
● una rete di cooperazione diffusa su tutto il territorio regionale,
capace di gestire (integrazione ed aggiornamento) nel tempo gli
strati informativi:
– Stradario
– Grafo strade
– Indirizzario
I dati sono attualmente presenti presso la banca dati del Servizio
Geografico Regionale.
2
Bolzano 12/11/2009
3. La struttura del database geografico
Struttura dati
La struttura dati degli accessi, dei civici e del grafo strade risulta costituita
da una serie strati geografici e tabelle alfanumeriche caratterizzate da
join multipli tra di esse
archi.dbf nodi.dbf accessi.dbf civici.dbf toponimo.dbf
COD_ELE ... COD_ELE
NOD_INI ... ...
COD_GNZ
NOD_FIN ...
COD_TOP COD_TOP COD_TOP
... COD_ACC_ES
... COD_ACC ...
COD_ACC_IN
3
Bolzano 12/11/2009
5. La struttura del database geografico
Accessi e civici
Accessi e civici
● strato vettoriale “accessi”
– un campo chiave “COD_ACC” per il collegamento alla tabella “civici”
● tabella alfanumerica “civici”
– due campi chiave “COD_ACC_ES” e “COD_ACC_IN” per il collegamento allo
strato “accessi”
– un campo chiave “COD_TOP” per il collegamento alla tabella “toponimo”
5
Bolzano 12/11/2009
6. La struttura del database geografico
Accessi e civici
Acceso esterno diretto
Accessi esterni indiretti
6
Bolzano 12/11/2009
7. La struttura del database geografico
Grafo strade
Grafo strade
● strato vettoriale “archi”
– due campi chiave “NOD_INI” e “NOD_FIN” per il collegamento allo strato
“nodi”
– un campo chiave “COD_TOP” per il collegamento alla tabella “toponimi”
● strato vettoriale “nodi”
– un campo chiave “COD_GNZ” per il collegamento alla tabella “archi”
●
tabella alfanumerica “toponimi”
– un campo chiave “COD_TOP” per il collegamento alla tabella “archi”
7
Bolzano 12/11/2009
8. Il Progetto Iter.Net del
Comune di Quarrata (PT)
Regione Toscana intende continuare nel lavoro di integrazione ed
aggiornamento di tale database geografico.
I Comuni che partecipanti al progetto devono realizzare un proprio database
seguendo la struttura delineata dalla Regione Toscana.
Comune di Quarrata
Gis3W, a tale scopo, ha sviluppato per il Comune di Quarrata (PT) un
applicativo WebGis per l'editing della geometria e degli attributi degli strati
informativi.
8
Bolzano 12/11/2009
9. Il progetto IterWeb
La scelta dell'applicativo WebGis:
● L'addetto non è vincolato ad una postazione fissa, il lavoro può
essere infatti svolto in remoto ed addirittura sul campo.
● I framework webgis OpenSource attualmente presenti permettono
la modifica, l'inserimento e l'eliminazione di dati geografici
puntuali, lineari e poligonali, in maniera avanzata con
caratteristiche simili se non uguali in alcuni casi ad un normale
strumento di desktop-mapping.
● I dati, stoccati all'interno di un database geografico centralizzato,
vengono modificati in linea, questo processo impedisce possibili
duplicazioni del dato, che in una normale procedura non
centralizzata potrebbe essere causa di errori.
9
Bolzano 12/11/2009
10. L'applicativo IterWeb
Tecnologie e software utilizzati
L'applicativo è stato realizzato con diversi software Open Source:
● Il framework Javascript per il Gis OpenLayers e il framework
Javascript JQuery con tecnologia AJAX.
● i dati relativi agli strati geografici sono stati inseriti in un database
PostegreSql con estensione spaziale PostGis
● il server Tilecache è stato utilizzato per la genesi delle tiles utilizzate
come base cartografica di editing, appoggiandosi sul software di
rendering Mapserver.
● il flusso dei dati geografici da e verso il database è stato realizzato
tramite il formato GEOJson e, a tale scopo, è stato implementato un
semplice featureserver GEOJson in PHP5
10
Bolzano 12/11/2009
11. IterWeb – La Struttura
Client
OpenLayers + JQuery
TMS
Server
WWW
Tilecache PHP5 GEOJson
WMS
Server ● OSM
● Google
●...
Mapserver PostgreSql + Postgis
11
Bolzano 12/11/2009
12. L'applicativo IterWeb
Il Server
L'unità Server si occupa di quelli aspetti legati all'interattività
dell'applicativo con il database PostgreSql:
● Autenticazione.
●
Accesso e salvataggio del dato geografico.
L'autenticazione
Al momento prevede un solo profilo di accesso, in futuro è prevista
l'implementazione di più profili di che avranno capacità di editing
differenziati.
L'accesso al dato
L'accesso avviene tramite una serie di query sul database, eseguite da
classi in php; i risultati di tali query sono inviati ad un featureServer
GEOJson (appositamente realizzato in php) che gestisce il trasferimento
di questi dati all'unità client.
12
Bolzano 12/11/2009
13. L'applicativo IterWeb
Il Server
Il salvataggio dei dati
I dati provenienti dal client (inserimenti, modifiche o eliminazioni) vengono
salvati grazie ad una serie di funzioni php che costruiscono le query
spaziali da applicare al database.
Perché il formato Json
● risulta estremamente leggero e di facile accesso da qualsiasi client javascript
● è facilmente accessibile dai maggiori linguaggi di scripting lato server presenti
oggi sul web (php, python...) grazie ad una serie di moduli e funzioni
appositamente realizzate
13
Bolzano 12/11/2009
14. L'applicativo IterWeb
Il Client
Il lato client dell'applicativo si occupa di tutti quelli aspetti legati
all'interattività, che vanno dalla navigazione all'editing del dato
geografico.
Il framework OpenLayers, su cui si base il nucleo dell'unità client, è dotato
di una serie di classi che permettono tale interattività ed editabilità.
Il tutto basato sulla tecnologia SVG (Scalable Vector Graphics).
14
Bolzano 12/11/2009
15. L'applicativo IterWeb
Il Client
Cosa ha fatto Gis3w
Gis3w ha sviluppato un sistema di sovra-controllo in javascript di delle
funzioni di editing di OpenLayers utilizzando il framework JQuery, tale
sistema é stato studiato in maniera che il risultato finale fosse un
applicativo con una modalità di editing che non si distanziasse molto dalle
modalità di lavoro dei principali software di desktop-mapping
OpensSource come QuantumGis, più familiare agli utilizzatori finali
dell'applicativo.
Come lo fa
Il sistema trigga gli eventi di inserimento, modifica e eliminazione
delle features dello strato sotto modalità di editing, aprendo una serie di
finestre in cui l'operatore può modificare o inserire gli attributi associati
al dato geografico e tutta una serie di parametri accessori che sono
collegati al dato geografico stesso, ma che non fanno parte dei suoi
attributi, secondo una serie di standard imposti nel progetto Iter.Net.
15
Bolzano 12/11/2009
16. L'applicativo IterWeb
Il Client
Comunicazione con il Server
La comunicazione del Client con il Server avviene tramite richieste AJAX le
quali inviano i dati modificati, inseriti o eliminati in formato dati
GEOJson.
16
Bolzano 12/11/2009
17. L'applicativo IterWeb
Futuro
●Accesso differenziato degli utenti
●Esportazione dati da database per invio alla Regione
17
Bolzano 12/11/2009