Use the left/right arrow keys to navigate, 's' to enable/disable scrolling.

Introduzione ai GIS Liberi


FLOSS4GIS

Indice


Tool di basso livello (proj, gdal)

GIS liberi per il desktop

Standard OGC

Tool di basso livello


La maggior parte dei software GIS liberi si poggia su uno stack di basso livello che offre le seguenti funzionalità:


  • gestione coordinate e georeferenziazione
  • cambio di datum e riproiezione al volo di dati geografici
  • gestione e conversione formati geografici raster
  • gestione e conversione formati geografici vettoriali

PROJ4


Proj4 è costituito da una libreria e un insieme di tools da linea di comando che sovraintendono alle seguenti funzioni:

  • definizione di datum geodetici e sistemi di rif.to cartografici
  • trasformazione di coordinate da angolari a metriche e viceversa (in determinatoto crs)
  • proiezione di coordinate da un datum ad un altro
  • proiezione di coordinate tra differenti crs
  • calcoli geodetici

Il progetto è nato nei primi anni ‘80, ed ha subito nel tempo diversi rimaneggiamenti, al fine di aggiungere il supporto a nuove proiezioni e ripulirne l’API. Ad oggi rappresenta uno standard de facto, e ne esistono diversi port in vari linguaggi di programmazione

Installare PROJ4


Su distribuzioni basate sul sistema di pacchettizzazione apt (Debian, Ubuntu..) l’installazione dei proj4 è estremanente semplice:


  • Installazione via interfaccia grafica: lanciare il gestore di pacchetti (synaptic) e selezionare il pacchetto proj-bin
  • Installazione da linea di comando: aprire un terminale e lanciare, con privilegi di amministratore, il comando:
    
    $> apt-get install proj-bin
    

Nota: in entrambi i casi apt si occuperà di installare tutte le dipendenze necessarie

GDAL/OGR


GDAL è una libreria in C++ per la gestione di formati raster geospaziali. Nella distribuzione di gdal vengono anche forniti una serie di utili tools a linea di comando per la traduzione interformato e per effettuare alcune semplici operazioni di geoprocessing


OGR è un progetto simile a gdal, ma espressamente indirizzato alla gestione di formati GIS vettoriali. Inizialmente si trattava di una libreria separata, ma negli ultimi anni è stata riunita nel source-tree di gdal

Installare GDAL/OGR


Installazione via interfaccia grafica: lanciare il gestore di pacchetti (synaptic) e selezionare il pacchetto gdal-bin



Installazione da linea di comando: aprire un terminale e lanciare, con privilegi di amministratore, il comando:


$> apt-get install gdal-bin

Nota: in entrambi i casi apt si occuperà di installare tutte le dipendenze necessarie

Soluzioni GIS libere


Negli ultimi anni sono state sviluppate numerose soluzioni libere GIS, che sono in grado di competere con le applicazioni proprietarie più note:


  • applicazioni stand-alone: GRASS, QuantumGIS, OpenJump, GvSIG, Saga, Kosmo…
  • server cartografici: MapServer (praticamente uno standard de facto), GeoServer, MapScript…
  • applicazioni cartografiche web-oriented: OpenLayers, Chameleon, KaMap!…
  • RDBMS con estensioni geografiche: PostGIS (PostgrSQL), MySQL, Spatialite

GRASS


GRASS è l’acronimo di “Geographic Resources Analysis Support System”


È un GIS con funzionalità di analisi e gestione dei dati geospaziali, image processing, produzione cartografica 2D e 3D, modellazione spaziale e visualizzazione, fortemente orientato all'elaborazione raster


È un progetto ufficiale dell’Open Source Geospatial Foundation, rilasciato in licenza GPL. Attualmente viene ampiamente utilizzato in ambienti accademici e governativi

Installare GRASS (v6.4)


Su Debian grass è suddiviso in due pacchetti:

  • programma (librerie e binari)
  • documentazione (pagine di manuale dei comandi disponibili)

Anche in questo caso l’installazione può essere effettuata da GUI o da terminale; i pacchetti da selezionare sono rispettivamente grass e grass-doc:


$> apt-get install grass grass-doc

QuantumGIS


Quantum GIS (QGIS) è un software GIS user friendly e Open Source, rilasciato in licenza GPL


QGIS è un progetto ufficiale dell’Open Source Geospatial Foundation (OSGeo). È un software multipiattaforma e supporta numerosi formati vettoriali e raster (attraverso gdal). Offre inoltre meccanismi di connessione a database relazionali con estensioni geografiche


Quantum GIS fornisce un numero sempre crescente di funzionalità (sia interne che attraverso plugins). Con QGIS è possibile gestire, visualizzare ed editare dati geografici, effettuare analisi dei dati e comporre cartografie tematiche

Installare QuantumGIS


L’installazione di QuantumGIS dipende dalla distribuzione GNU/Linux utilizzata. Nel caso più semplice (Debian), il software è direttamente disponibile nei repository ufficiali (anche se in una versione un po’ datata):


$> apt-get install qgis python-qgis qgis-plugin-grass

Su Ubuntu è invece necessario ricorrere a repository di terze parti (ppa)

OpenJUMP


OpenJUMP è un GIS open source scritto in Java, basato su JUMP GIS di Vivid Solutions


È un GIS particolarmente orientato all’analisi vettoriale, con limitate funzionalità di gestione di dati raster. Essendo scritto in Java, è portabile su tutte le piattaforme per le quali sia disponibile una Java Virtual Machine (JVM)


Anche OpenJump è un software rilasciato in GPL

Installare OpenJUMP


OpenJUMP non è presente nei repository ufficiali di nessuna distribuzione GNU/Linux. Tuttavia non necessita di una vera e propria installazione, trattandosi di un software interamente scritto in Java.


Per utilizzare OpenJUMP è necessaria la presenza sul sistema di una JVM, installabile mediante il comando:


$> apt-get install sun-java6-jre


A questo punto è sufficiente scaricare il software dal sito del progetto (http://www.openjump.org/), decomprimere il pacchetto e lanciare da terminale lo script di avvio (openjump/bin/openjump.sh)

PostGIS


PostGIS è un’estensione spaziale per il DBMS relazionale ad oggetti PostgreSQL distribuito con licenza GPL


Fornisce i tipi di dati specifici per il supporto alle geometrie e un complesso insieme di funzioni di elaborazione spaziale



Nota: l’installazione e la configurazione di PostGIS è più complicata, ed è pertanto rimandata ad una lezione successiva

Soluzioni per il GIS sul Web


Nel panorama dei WebGIS liberi, spiccano diverse soluzioni, caratterizzate da architetture più o meno complesse:


  • MapServer: server cartografico compatibile con gli standard WMS (Web Map Service) e WFS (Web Feature Service)
  • Mapscript: API multilinguaggio per la programmazione lato server
  • Chameleon: framework per la costruzione di GUI cartografiche lato server (PHP)
  • OpenLayers, KaMap!: toolkits client side (Javascript)

OpenLayers



OpenLayers è una libreria Javascript per la creazione di interfacce WebGIS Ajax (simili a quelle di GoogleMaps)


È in grado di visualizzare ritagli cartografici (map tiles) e marcatori (bookmark spaziali) caricandoli da qualsiasi sorgente remota (WMS/WFS)


OpenLayers è un progetto completamente libero, rilasciato sotto una licenza in stile BSD

Chameleon


Chameleon è un ambiente di sviluppo per applicazioni WebGIS distribuite, ampiamente configurabile, basato su MapServer (che fornisce l’engine cartografico)


Con Chameleon è possibile creare rapidamente un’applicazione WebGIS sulla base di un set di widgets (pulsanti di zoom, map, legende..) configurabili attraverso un template XML/HTML


Chameleon è risasciato sotto licenza GPL

KaMap!


Ka-map! è un progetto open source che mira a fornire un’API javascript per lo sviluppo di interfacce WebGIS altamente interattive


Tra le sue caratteristiche spiccano:

  • capacità di panning interattivo e continuo, senza ricaricamento della pagina
  • zoom a scale preselezionate
  • scalebar, legenda e keymap

Ka-map! è rilasciato in licenza MIT

OGC: Open Geospatial Consortium


Open Geospatial Consortium, Inc (OGC) è un consorzio no-profit di aziende, agenzie governative e università impegnato nella produzione di standard pubblici per i sistemi informativi geografici


OGC detiene il marchio registrato OpenGIS®, che racchiude una serie di specifiche relative a formati, tecnologie e servizi di interoperabilità


OGC è stato fondato da 8 attori del mercato GIS nel 1994, e ad oggi conta più di 400 membri

OGC: GML e KML


GML (Geography Markup Language) è una grammatica XML per descrivere oggetti geografici (features vettoriali). Fornisce da un lato un linguaggio (DSL) di modellazione human-readable per dati vettoriali georiferiti, e dall’altro un comodo (e ampiamente utilizzato) formato di interscambio tra software differenti o attraverso la Rete


KML è un altro linguaggio XML-based, sottomesso ad un processo di standardizzazione da Google. Rispetto a GML, aggiunge funzionalità per la gestione di annotazioni e la descrizione della visualizzazione

OGC: SQL extensions


Simple Features Interface Standard (SFS) definisce le specifiche per la memorizzazione e la manipolazione di dati geografici (vettoriali) in un database relazionale


Lo standard copre i seguenti aspetti:

  • metadati necessari per la gestione delle estensioni geografiche
  • tipi di dati supportati
  • formati di input/output (WKT, WKB)
  • funzioni di gestione
  • funzioni di geoproccessing

OGC: WMS


WMS (Web Map Service) è un’interfaccia standard poggiata sul protocollo HTTP per l’implentazione di servizi cartografici basati su immagini (più precisamente tiles)


Si tratta di una specifica matura e ampliamente utilizzata, implementata nella maggior parte dei server cartografici (liberi e non) disponibili sul mercato


Servizi Web come GoogleMaps© e Yahoo Maps© sono implementati mediante Web-services basati su WMS

OGC: WFS


WFS nasce dall’esigenza di fornire un’interfaccia per l’accesso e la manipolazione di dati georiferiti attraverso la rete


Come WMS, si poggia sul protocollo HTTP per la gestione delle richieste, ma a differenza di quest’ultimo, genera risposte di tipo geometrico, codificate in un qualsiasi formato di interscambio (generalmente GML)


WMS definisce anche metodi standard per la modifica di geometrie remote (tipicamente mantenute in un RDBMS con estensioni geografiche)

Copyright 2010 - Alca Soc. Coop.


http://learn.alcacoop.it - learn@alcacoop.it



released under CreativeCommons 2.5 by-nc-sa