Outdated version of the documentation. Find the latest one here.

.

Formati supportati

QGIS usa la libreria OGR per leggere e creare vettori, inclusi i formati ESRI shapefile, MapInfo e MicroStation, AutoCAD DXF, PostGIS, SpatiaLite, database Oracle Spatial e MSSQL, e molti altri ancora. Il supporto ai vettori GRASS e a PostgreSQL è fornito da plugin nativi. I vettori possono anche essere caricati in modalità lettura da archivi zip e gzip. Attualmente la libreria OGR supporta 69 formati di vettori (vedi OGR-SOFTWARE-SUITE in Letteratura e riferimenti web). La lista completa è diponibile all’indirizzo http://www.gdal.org/ogr/ogr_formats.html.

Nota

Alcuni dei formati elencati all’indirizzo citato potrebbero non essere supportati da QGIS per diverse ragioni: ad esempio, alcuni richiedono librerie commerciali esterne oppure GDAL/OGR è stata installata senza scegliere il supporto per uno specifico formato. Solo i formati adeguatamente testati appariranno nella lista di tipi di file al momento del caricamento di un vettore all’interno di QGIS. Altri formati, non testati, possono essere caricati selezionando *.*.

La sezione Integrazione con GRASS GIS ti mostra come lavorare con i dati di GRASS.

Questa sezione descrive come lavorare con diversi formati comuni: ESRI shapefile, vettori PostGIS, vettori SpatialLite, vettori OpenStreetMap e file CSV. Molti degli strumenti disponibili in QGIS funzionano allo stesso modo a prescindere dal tipo di formato (ad es. l’identificazione, la selezione, le etichette e le funzioni degli attributi).

Shapefile ESRI

Il formato di file predefinito in QGIS è ESRI shapefile. Il supporto al formato è fornito dalla libreria OGR Simple Feature Library (http://www.gdal.org/ogr/).

Uno shapefile è costituito da di un minimo di tre file:

  1. .shp contente le geometrie

  2. .dbf contenente gli attributi in formato dBase

  3. .shx contenente l’indice

Uno shapefile può anche includere un file con suffisso .prj che contiene le informazioni sulla proiezione. Anche se non è obbligatorio, è molto utile avere informazioni sulla proiezione del file. Un insieme di dati shapefile può contenere anche altri tipi di file. Per ulteriori informazioni, vedi le specifiche tecniche di ESRI all’indirizzo http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf.

Caricare uno shapefile

Per caricare uno shapefile, avvia QGIS e clicca sul pulsante mActionAddOgrLayer Aggiungi vettore o semplicemente premi Ctrl+Shift+V. Si aprirà cosi una nuova finestra (vedi figure_vector_1).

Figure Vector 1:

../../../_images/addvectorlayerdialog.png

Finestra di dialogo aggiungi vettore nix

Nella finestra di dialogo seleziona radiobuttonon File e clicca su [Sfoglia]. Si aprirà cosi una finestra di dialogo standard (vedi figure_vector_2) che ti consentirà di cercare nel computer lo shapefile o qualunque altro dato vettoriale che vuoi caricare. La casella di controllo Tipo file selectstring consente di selezionare in anticipo specifici formati supportati da OGR.

Se vuoi, puoi selezionare il tipo di codifica per lo shapefile.

Figure Vector 2:

../../../_images/shapefileopendialog.png

Finestra di dialogo apri vettore OGR nix

Per caricare un vettore in QGIS, seleziona uno shapefile dalla lista e clicca su [Apri]. La figura Figure_vector_3 mostra come appare l’interfaccia di QGIS dopo aver caricato il file alaska.shp.

Figure Vector 3:

../../../_images/shapefileloaded.png

QGIS con i dati campione Alaska caricati nix

Suggerimento

Colori dei vettori

Quando aggiungi un vettore alla mappa, gli viene assegnato un colore casuale. Se aggiungi più vettori in una sola volta, ciascuno avrà un colore diverso.

Una volta caricato lo shapefile, puoi interagire con la mappa usando gli strumenti di navigazione. Per cambiare lo stile di un vettore, apri la finestra di dialogo Proprietà layer facendo doppio click sul nome del vettore oppure cliccando con il tasto destro sul nome del vettore e scegliendo Proprietà. Vedi la sezione Menu Stile per ulteriori informazioni su come impostare la simbologia dei vettori.

Suggerimento

Caricare vettori e progetti da periferiche esterne in OS X

In OS X le periferiche esterne montate accanto al disco fisso principale non sono visibili nel menu File ‣ Apri progetto. Stiamo lavorando per cercare di risolvere questo problema con OS X; come soluzione temporanea digita /Volume nella casella Nome file e clicca invio. In questo modo potrai utilizzare le periferiche esterne.

Ottimizzare le prestazioni per gli shapefile

Per migliorare le prestazioni di visualizzazione di uno shapefile, puoi creare un indice spaziale. L’indice spaziale migliora la velocità di visualizzazione quando usi le funzioni di zoom e di spostamento. Gli indici spaziali usati da QGIS hanno estensione .qix.

Segui questi passi per creare un indice spaziale:

  • Carica uno shapefile cliccando sul pulsante mActionAddOgrLayer Aggiungi vettore oppure premi Ctrl+Shift+V.

  • Apri la finestra di dialogo Proprietà layer facendo doppio click sul nome dello shapefile nella legenda o cliccandoci con il tasto destro e scegliendo Proprietà dal menu contestuale.

  • Nella scheda Generale clicca sul pulsante [Crea indice spaziale].

Problemi nel caricare un file .prj

Se carichi uno shapefile con file .prj associato e QGIS non riesce a leggere le informazioni della proiezione, devi inserire manualmente queste informazioni nella scheda Generale della finestra di dialogo Proprietà layer cliccando su [Specifica...]. Questo è dovuto al fatto che spesso i file .prj non forniscono i parametri di proiezione completi che richiede QGIS e che sono elencati nella finestra di dialogo SR.

Per la stessa ragione, quando crei un nuovo shapefile in QGIS, vengono creati due differenti file di proiezione. Un file .prj che ha un insieme limitato di parametri compatibili con il software ESRI, e un file .qpj che memorizza l’insieme completo dei parametri del SR utilizzato. Quando QGIS trova un file .qpj utilizza quest’ultimo invece del file .prj.

Caricare un vettore MapInfo

mActionAddOgrLayer Per caricare un file Mapinfo, clicca sul pulsante mActionAddOgrLayer Aggiungi vettore o premi Ctrl+Shift+V, cambia il filtro nel menu a tendina a Tipo file selectstring: in ‘file MapInfo [OGR] (*.mif *.tab *.MIF *.TAB)’ e seleziona il file che vuoi caricare.

Caricare una coverage binaria ArcInfo

Per caricare una ArcInfo Binary Coverage clicca sul pulsante mActionAddOgrLayer Aggiungi vettore o premi Ctrl+Shift+V per aprire la finestra di dialogo Aggiungi vettore. Seleziona radiobuttonon Cartella come Tipo sorgente e cambia il filtro del Tipo selectstring con Coverage binaria Arc/Info.

In modo simile puoi caricare vettori nel formato di trasferimento UK National Transfer Format oppure anche nel formato TIGER del US Census Bureau.

File di testo delimitato

I dati tabellari sono un formato molto comune ed utilizzato proprio grazie alla loro semplicità e leggibilità – infatti i dati possono essere visualizzati e modificati con un semplice editor di testo. Un file di testo delimitato è una tabella di attributi in cui ogni colonna è separata da un preciso carattere mentre le righe sono separate da un nuovo capoverso. Di solito la prima riga contiene i nomi delle colonne. Un formato molto comune è il CSV (Comma Separated Values), dove ogni colonna è separata da una virgola.

Questi dati possono anche contenere informazioni sulla posizione in due forme principali:

  • Come coordinate puntuali in colonne separate

  • Come rappresentazione geometrica in Well-Known-Text (WKT)

QGIS ti permette di caricare un file in formato di testo delimitato come layer o come tabella. Prima però assicurati che soddisfi questi requisiti:

  1. Il file deve avere una riga di intestazione per il nome dei campi. Questa deve essere la prima riga del testo.

  2. La riga di intestazione deve contenere campi relativi alla definizione geometrica. Questi campi possono avere un nome qualunque.

  3. Le coordinate X e Y (se la geometria è identificata da coordinate) devono essere specificate come numeri. Il sistema di coordinate non è importante.

Come esempio di un file di testo valido, importa il file di punti quotati elevp.csv presente nell’insieme di dati campione di QGIS (vedi sezione Dati campione):

X;Y;ELEV
-300120;7689960;13
-654360;7562040;52
1640;7512840;3
[...]

Alcune cose da tenere in considerazione in merito al file di testo:

  1. Il file di testo usato come esempio usa ; (punto e virgola) come delimitatore. Ma qualsiasi carattere può essere usato per delimitare i campi.

  2. La prima riga è la riga di intestazione. Questa contiene i campi X, Y e ELEV.

  3. Nessun tipo di virgoletta (") dev’essere usata per delimitare i campi di testo.

  4. Le coordinate X sono contenute nel campo X.

  5. Le coordinate Y sono contenute nel campo Y.

Caricare un file di testo delimitato

Clicca sull’icona delimited_text Aggiungi layer testo delimitato nella barra degli strumenti Gestione layer per aprire la finestra Crea un vettore da un file di testo delimitato come mostrato in figura figure_delimited_text_1.

Figure Delimited Text 1:

../../../_images/delimited_text_dialog.png

Finestra di dialogo Testo Delimitato nix

Seleziona il file da importare (es. qgis_sample_data/csv/elevp.csv) cliccando sul pulsante [Sfoglia]. Una volta che hai scelto il file, QGIS tenta di interpretare il file usando i delimitatori più recenti. Per far sì che QGIS interpreti il file nel modo corretto devi scegliere il delimitatore corretto. Lo puoi specificare con il pulsante Delimitatori personalizzati oppure attivando Delimitatore espressione regolare e inserendo un testo nel campo Espressione. Per esempio, se vuoi usare TAB come delimitatore usa \t (questa è l’espressione regolare usata per TAB).

Interpretato il file, imposta Definizione geometria in radiobuttononCoordinate del punto e scegli i campi X e Y dal menu a tendina. Se le coordinate sono definite in gradi/minuti/secondi, attiva la casella di controllo checkbox Coordinate GMS.

Infine, inserisci il nome del vettore (es. elevp), come mostrato in figura figure_delimited_text_1. Per aggiungere il vettore alla mappa, clicca su [OK]. Il file di testo delimitato si comporterà cosi come ogni altro vettore.

Puoi anche tagliare gli spazi iniziali e finali dai campi spuntando la casella di controllo checkbox Rifinisci i campi. Inoltre puoi anche spuntare la casella di controllo checkbox Scarta i campi vuoti. Se è necessario puoi forzare la lettura della virgola come separatore decimale spuntando la casella di controllo checkbox La virgola è il separatore decimale.

Se le informazioni spaziali sono rappresentate da WKT, attiva l’opzione radiobuttonon Well Known Text e seleziona il campo del WKT per i punti, linee o poligoni. Se il file contiene dati non-spaziali, attiva radiobuttonon Nessuna geometria (solo tabella degli attributi); in questo modo verrà caricato come una tabella normale.

Puoi anche attivare:

  • checkbox Usa indice spaziale per migliorare le prestazioni di visualizzazione di selezione delle geometrie.

  • checkbox Usa indice di raggruppamento

  • checkbox Controlla file per controllare le modifiche del file effettuate da altri programmi mentre QGIS è avviato.

Dati OpenStreetMap

Il progetto OpenStreetMap (OSM) si sta ampiamente diffondendo, sopratutto in quei paesi dove non si hanno a disposizione dati geografici liberi. L’obiettivo di OSM è la creazione di una mappa mondiale aggiornabile e libera partendo da dati GPS, foto aeree e conoscenza locale. QGIS appoggia questo progetto fornendo supporto ai dati OSM.

Caricare vettori OpenStreetMap

QGIS integra l’importazione dei dati OpenStreetMap come funzionalità di base.

  • Per connetterti al server OSM e scaricare i dati, apri il menu Vettore ‣ OpenStreetMap ‣ Download dati. Puoi saltare questo passaggio se hai già a disposizione un file XML .osm ottenuto con JOSM, Overpass API o altre fonti.

  • Il menu Vettore ‣ OpenStreetMap ‣ Importa topologia da XML convertirà il tuo file .osm in un database SpatiaLite e creerà una connessione a questo database.

  • Il menu Vettore ‣ OpenStreetMap ‣ Esporta topologia in SpatiaLite ti permette quindi di connetterti al database, selezionare le etichette e i tipi di dati (punti, linee o poligoni) che vuoi importare. Questo creerà una geometria SpatiaLite che potrai aggiungere al tuo progetto cliccando sul pulsante mActionAddSpatiaLiteLayer Aggiungi vettore SpatiaLite... oppure selezionando l’opzione mActionAddSpatiaLiteLayer Aggiungi vettore SpatiaLite... dal menu Layer (vedi sezione Vettori SpatiaLite).

Vettori PostGIS

I vettori PostGIS sono memorizzati in un database PostgreSQL. PostGIS ha diversi vantaggi: creazione dell’indice spaziale, capacità di filtraggio e di interrogazione molto potenti. Usando PostGIS, le funzioni vettoriali come la selezione e l’identificazione sono più precise che con i vettori OGR in QGIS.

Creare una connessione

La prima volta che usi PostGIS come sorgente dati, devi creare una connessione al database PostgreSQL che contiene i dati. Clicca sul pulsante mActionAddPostgisLayer Aggiungi vettore PostGIS... oppure seleziona l’opzione mActionAddPostgisLayer Aggiungi vettore PostGIS... dal menu Layer oppure ancora premi Ctrl+Shift+D. Puoi anche usare la finestra di dialogo Aggiungi vettore e selezionare il pulsante radiobuttonon Database. Si aprirà così la finestra di dialogo Aggiungi tabella(e) PostGIS. Clicca su [Nuovo] per far aprire la finestra di dialogo Crea una nuova connessione PostGIS e accedi al gestore delle connessioni. I parametri richiesti per la connessione sono:

  • Nome: Nome della connessione. Può essere uguale a quello del Database.

  • Servizio: Parametri del servizio da usare alternativamente a host/porta (e potenzialmente database). Lo puoi definire in pg_service.conf.

  • Host: Nome del server che ospita il database. Deve essere un host con indirizzo raggiungibile, lo stesso che potrebbe essere usato per aprire una connessione telnet o per fare il ping all’host. Se il database è sullo stesso computer sul quale è installato QGIS, inserisci semplicemente ‘localhost’.

  • Porta: Numero della porta del server database PostgreSQ. La porta predefinita è 5432.

  • Database: Nome del database.

  • Modalità SSL: come la connessione SSL verrà negoziata con il server. Puoi velocizzare la visualizzazione dei vettori PostGIS disabilitando la connessione SSL. Sono disponibili le seguenti opzioni:

    • disabilitato: prova solo una connessione SSL non criptata

    • permesso: tenta una connessione non-SSL, se questa fallisce ne tenta una SSL

    • preferito (predefinito): tenta una connessione SSL, se questa fallisce ne prova una non-SSL

    • richiesto: tenta solo una connessione SSL

  • Nome utente: Nome dell’utente usato per accedere al database.

  • Password: Password usata dallo Username per collegarsi al database.

Se vuoi, puoi attivare le seguenti caselle di controllo:

  • checkbox Salva nome utente

  • checkbox Salva Password

  • checkbox Cercare solamente nella tabella geometry_columns

  • checkbox Non risolvere tipo di geometria senza restrizioni (GEOMETRY)

  • checkbox Cerca solamente nello schema

  • checkbox Mostra anche tabelle senza geometria

  • checkbox Usa i metadati stimati della tabella

Quando hai impostato tutti i parametri, puoi testare la connessione cliccando sul pulsante [Test Connessione].

Caricare un vettore PostGIS

Una volta definita la connessione, puoi caricare i vettori dal database PostgreSQL. Ovviamente devi avere i dati in PostgreSQL. Vedi la sezione Importare dati in PostgreSQL per informazioni su come importare dati nel database.

Per caricare vettori PostGIS, segui i seguenti passaggi:

  • Se non hai ancora aperto la finestra di dialogo Aggiungi vettore PostGIS, seleziona l’opzione mActionAddPostgisLayer Aggiungi vettore PostGIS... dal menu Layer oppure premi Ctrl+Shift+D.

  • Scegli la connessione dal menu a tendina e clicca su [Connetti].

  • Seleziona/deseleziona checkbox Mostra anche le tabelle senza geometria.

  • Spunta la casella di controllo checkbox Opzioni di ricerca per specificare quali elementi caricare dal vettore oppure usa [Imposta filtro] per avviare la finestra di dialogo Costruttore interrogazioni.

  • Scegli il vettore che vuoi caricare dalla lista di quelli disponibili.

  • Seleziona il vettore cliccando sul nome. Puoi selezionare più vettori tenendo premuto il tasto Shift mentre stai selezionando. Vedi la sezione Costruttore di interrogazioni per informazioni su come usare il Costruttore di interrogazioni PostgreSQL.

  • Clicca su [Aggiungi] per aggiungere il vettore alla mappa.

Suggerimento

Vettori PostGIS

Solitamente un vettore PostGIS è definito da una voce nella tabella geometry_columns. Dalla versione 0.9.0 in poi, QGIS può caricare vettori che non hanno questa voce nella tabella geometry_columns. Questo vale sia per le tabelle che per le viste. Definire una vista spaziale fornisce un mezzo molto potente per visualizzare i tuoi dati. Fai riferimento al manuale di PostgreSQL per informazioni su come creare le viste.

Alcuni dettagli sui vettori PostgreSQL

Questa sezione contiene alcuni dettagli su come QGIS accede ai vettori PostgreSQL. La maggior parte delle volte QGIS dovrebbe semplicemente fornirti un elenco di tabelle del database che possono essere caricate e dovrebbe poi caricarle in base alla tua richiesta. Se hai difficoltà a caricare una tabella di PostgreSQL in QGIS, le informazioni seguenti ti possono aiutare a capire tutti i messaggi di QGIS e ti possono dare un’indicazione di come cambiare le tabella o le definizioni delle viste di PostgreSQL in modo che QGIS le possa caricare.

QGIS richiede che i vettori PostgreSQL contengano una colonna che possa essere usata come chiave univoca per il vettore. Le tabelle devono contenere una chiave primaria o una colonna con un vincolo univoco. Questa colonna deve essere di tipo int4 (un numero intero di 4 byte). Alternativamente, la colonna ctid può essere usata come chiave primaria. Se a una tabella mancano queste informazioni, verrà usata la colonna oid. Le prestazioni saranno migliori se la colonna è indicizzata (le chiavi primarie sono indicizzate automaticamente in PostgreSQL).

Le viste di PostgreSQL hanno gli stessi requisiti di un vettore, ma non necessitano di chiavi primarie o colonne con vincoli univoci. Devi definire un campo della chiave primaria (deve essere un intero) nella finestra di dialogo di QGIS prima di caricare la vista. Se non c’è una colonna adatta nella vista, QGIS non caricherà il vettore. Se succede la soluzione è di modificare la vista in modo che contenga una colonna adatta (un intero e una chiave primaria con un vincolo univoco, preferibilmente indicizzato).

In QGIS è disponibile una casella di controllo Scegli all’id, attivata in modo predefinito. Questa opzione permette di ottenere gli id senza gli attributi, velocizzando il processo. Deseleziona questa opzione se usi viste molto grosse.

Importare dati in PostgreSQL

I dati possono essere importati in PostreSQL/PostGIS usando diversi strumenti, come il plugin DB Manager e gli strumenti da riga di comando shp2pgsql e ogr2ogr.

DB Manager

QGIS ha un plugin nativo chiamato icon_dbmanager DB Manager. Lo puoi usare per caricare shapefile e altri formati, e include il supporto per gli schemi. Vedi la sezione Plugin DB Manager per ulteriori informazioni.

shp2pgsql

Puoi usare lo strumento shp2pgsql di PostGIS per importare shapefile in un database PostGIS. Per esempio, per importare uno shapefile chiamato lakes.shp in un database PostgreSQL chiamato gis_data, usa il seguente comando:

shp2pgsql -s 2964 lakes.shp lakes_new | psql gis_data

Questo comando crea un nuovo vettore, chiamato lakes_new, nel database gis_data. Il nuovo vettore avrà un identificatore del sistema di riferimento (Spatial Reference Identifier - SRID) corrispondente a 2964. Vedi la sezione Lavorare con le proiezioni per ulteriori informazioni sui sistemi di riferimento spaziali e sulle proiezioni.

Suggerimento

Esportare dati da PostGIS

Come lo strumento di importazione shp2pgsql, esiste anche il comando che permette di esportare set di dati da PostGIS come shapefile: pgsql2shp. Lo strumento è incluso con la tua versione di PostGIS.

ogr2ogr

Oltre a shp2pgsql e DB Manager c’è un altro strumento per caricare dati in PostGIS: ogr2ogr. Questo comando fa parte dell’installazione di GDAL.

Per importare uno shapefile in PostGIS con ogr2ogr digita il seguente comando:

ogr2ogr -f "PostgreSQL" PG:"dbname=postgis host=myhost.de user=postgres
password=topsecret" alaska.shp

Questo comando importerà lo shapefile alaska.shp nel database PostGIS postgis usando come utente postgres e come password topsecret sull’host myhost.de.

Nota che OGR deve essere compilato con il supporto PostgreSQL per poter effettuare questa operazione. Puoi verificarlo digitando

ogrinfo --formats | grep -i post

Se volessi usare il comando interno di PostgreSQL COPY al posto del metodo predefinito INSERT INTO, devi impostare le variabili d’ambiente come segue (su piattaforme nix e osx):

export PG_USE_COPY=YES

ogr2ogr non crea indici spaziali come shp2pgsl. Devi crearli manualmente, usando il comando SQL CREATE INDEX dopo l’importazione, come passo aggiuntivo (sezione Migliorare le prestazioni).

Migliorare le prestazioni

Richiamare dati geografici da un database PostgreSQL può richiedere molto tempo, specialmente se il server è collegato alla rete. Puoi migliorare le prestazioni visualizzazione di vettore PostgreSQL creando un indice spaziale PostGIS spatial index per ogni vettore del database. PostGIS supporta la creazione di un indice GiST (indice dell’albero generalizzato di ricerca, Generalized Search Tree) per velocizzare le ricerche spaziali di dati (le informazioni su GIST fanno riferimento alla documentazione di PostGIS disponibile all’indirizzo http://postgis.refractions.net).

La sintassi per la creazione di un indice GiST è:

CREATE INDEX [indexname] ON [tablename]
  USING GIST ( [geometryfield] GIST_GEOMETRY_OPS );

Nota che per tabelle molto grandi, la creazione dell’indice può richiedere parecchio tempo. Non appena l’indice è stato creato, dovresti effettuare un VACUUM ANALYZE. Vedi la documentazione di PostGIS (POSTGIS-PROJECT Letteratura e riferimenti web) per ulteriori informazioni.

Segue un esempio di come creare un indice GiST:

[email protected]:~/current$ psql gis_data
Welcome to psql 8.3.0, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

gis_data=# CREATE INDEX sidx_alaska_lakes ON alaska_lakes
gis_data-# USING GIST (the_geom GIST_GEOMETRY_OPS);
CREATE INDEX
gis_data=# VACUUM ANALYZE alaska_lakes;
VACUUM
gis_data=# \q
[email protected]:~/current$

Vettori a cavallo dei 180° di longitudine

Molti software GIS non gestiscono al meglio le mappe vettoriali, con sistema di riferimento geografico (lat/lon), a cavallo della linea di longitudine 180 degrees (http://postgis.refractions.net/documentation/manual-2.0/ST_Shift_Longitude.html). Se carichi una di queste mappe in QGIS vedrai aree geografiche distanti fra di loro anche se in realtà sono vicine. Nella figura Figure_vector_4 il piccolo punto all’estrema sinistra della vista mappa (Chatham Islands) dovrebbe essere all’interno della griglia subito alla destra dell’isola principale della Nuova Zelanda.

Figure Vector 4:

../../../_images/vectorNotWrapping.png

Mappa in lat/lon a cavallo dei 180° di longitudine nix

Una soluzione consiste nel trasformare i valori di longitudine utilizzando PostGIS e la funzione ST_Shift_Longitude. Questa funzione legge i punti/vertici di ogni elemento di una geometria e se la coordinata di longitudine è < 0° , aggiunge 360°. Il risultato sarà una versione 0° - 360° dei dati, che verranno poi visualizzati su una mappa centrata a 180° .

Figure Vector 5:

../../../_images/vectorWrapping.png

Vettori a cavallo di 180° di longitudine usando la funzione ST_Shift_Longitude

Guida all’uso

  • Importare i dati in PostGIS (Importare dati in PostgreSQL) usando, per esempio, il plugin DB Manager.

  • Usa l’interfaccia da linea di comando di PostGIS per dare il seguente comando (nell’esempio -“TABLE” è il nome della tua tabella PostGIS):

  • Se tutto è andato a buon fine, riceverai la conferma sul numero di elementi che sono stati aggiornati. Potrai cosi caricare la mappa e vedere le differenze (figura Figure_vector_5).

Vettori SpatiaLite

Per caricare dei dati da un database SpatiaLite clicca sullo strumento mActionAddSpatiaLiteLayer Aggiungi un layer SpatiaLite o seleziona l’opzione mActionAddSpatiaLiteLayer Aggiungi un layer SpatiaLite... dal menu Layer oppure premi Ctrl+Shift+L. Si aprirà una finestra di dialogo che ti permetterà di accedere ai dati di un database SpatiaLite già connesso a QGIS oppure di definire la connessione ad un nuovo database. Per connettersi ad un nuovo database clicca su [Nuovo] e seleziona il database SpatiaLite, ovvero un file con l’estensione .sqlite.

Per salvare un vettore in formato SpatialLite, clicca con il tasto destro del mouse sul vettore nella legenda e seleziona l’opzione Salva con nome..., scegli il nome del file in output, seleziona SQLite come formato e il SR che preferisci. Aggiungi anche SPATIALITE=YES nel riquadro Sorgente dati delle opzioni di creazione OGR. Vedi http://www.gdal.org/ogr/drv_sqlite.html per ulteriori informazioni.

QGIS supporta anche viste modificabili in SpatiaLite.

Creare un nuovo vettore SpatiaLite

Per creare un nuovo vettore SpatiaLite, fai riferimento alla sezione Creare un nuovo layer SpatiaLite.

Suggerimento

SpatiaLite data management plugin

Per la gestione dei dati SpatiaLite puoi usare diversi plugin: QSpatiaLite, SpatiaLite Manager o DB Manager (plugin nativo, raccomandato). Li puoi scaricare e installare con il gestore dei plugin.

Vettori Spatial MSSQL

QGIS fornisce anche supporto nativo a MS SQL 2008. La prima volta che carichi dai dati MSSQL, inizia cliccando il pulsante mActionAddMssqlLayer Aggiungi vettore MSSQL oppure seleziona l’opzione mActionAddMssqlLayer Aggiungi vettore MSSQL... dal menu Layer oppure ancora premi Ctrl+Shift+M.

Vettori Oracle Spatial

Le geometrie spaziali in Oracle Spatial ti aiutano a gestire e localizzare i dati geografici nativi all’interno di un database Oracle. QGIS supporta questi vettori.

Creare una connessione

La prima volta che usi Oracle Spatial come sorgente dati, devi creare una connessione al database che contiene i dati. Clicca sul pulsante mActionAddOracleLayer Aggiungi vettore Oracle, seleziona l’opzione mActionAddOracleLayer Aggiungi vettore Oracle... dal menu Layer oppure premi Ctrl+Shift+O. Per accedere al gestore delle connessioni clicca sul pulsante [Nuovo] per aprire la finestra di dialogo Crea una nuova connessione Oracle. I parametri richiesti per la connessione sono:

  • Nome: Nome della connessione. Può essere uguale a quello del Database.

  • Database: SID o SERVICE_NAME dell’istanza Oracle.

  • Host: Nome del server che ospita il database. Deve essere un host con indirizzo raggiungibile, lo stesso che potrebbe essere usato per aprire una connessione telnet o per fare il ping all’host. Se il database è sullo stesso computer sul quale è installato QGIS, inserisci semplicemente ‘localhost’.

  • Port: numero della porta del server PostgreSQL. La porta predefinita è 1521.

  • Nome utente: Nome utente che accede al database.

  • Password: Password usata dallo Username per collegarsi al database.

Come opzione, puoi spuntare le seguenti caselle di controllo:

  • checkbox Salva nome utente specifica se vuoi salvare il nome utente del database nelle configurazioni di connessione.

  • checkbox Salva password specifica se vuoi salvare la password del database nelle configurazioni di connessione.

  • checkbox Cerca solo nelle tabelle dei metadati restringe le tabelle visualizzate a quello che sono presenti nella vista all_sdo_geom_metadata. Questo procedimento velocizza la visualizzazione iniziale delle tabelle spaziali.

  • checkbox Cerca solo tabelle dell’utente: nella ricerca di tabelle spaziali, si limita a quelle di proprietà dell’utente.

  • checkbox Mostra anche tabelle senza geometria specifica che anche le tabelle senza geometria devono essere elencate.

  • checkbox Usa i metadati stimati del vettore: quando il vettore è stato impostato, la tabella Oracle richiede diversi metadati. Sono necessarie informazioni come il conteggio delle righe della tabella, il tipo di geometria e l’estensione spaziale nella colonna geometria. Se la tabella contiene un grande numero di righe che descrivono i metadati, stimare questi metadati porterà via molto tempo. Attivando questa opzione verranno eseguite le seguenti rapide operazioni sulla tabella dei metadati: Il conteggio delle righe è determinato da all_tables.num_rows. Le estensioni della tabella saranno sempre determinate con la funzione SDO_TUNE.EXTENTS_OF anche se è stato applicato un filtro al vettore.

  • checkbox Solo tipi di geometrie esistenti elenca solo i tipi di geometria esistenti e non permettere di aggiungerne altre.

Quando hai impostato tutti i parametri, puoi testare la connessione cliccando sul pulsante [Test Connessione].

Suggerimento

Impostazioni utente e sicurezza

A seconda delle impostazioni del tuo computer, la memorizzazione delle password nelle impostazioni di QGIS può essere un rischio per la sicurezza. Le password vengono salvate in testo leggibile nelle configurazioni di sistema e nel file di progetto! Le impostazioni personalizzate di QGIS sono salvate in modo diverso in base al sistema operativo:

  • nix le impostazioni sono salvate nella tua cartella home nel file ~/.qgis2.

  • win le impostazioni sono salvate nel registro di sistema.

Caricare un vettore Oracle Spatial

Una volta che hai stabilito una o più connessioni, puoi caricare i vettori dal database Oracle. Ovviamente i dati devono essere memorizzati in Oracle.

Per caricare un vettore da Oracle Spatial, segui i seguenti passaggi:

  • Se non hai ancora aperto la finestra Aggiungi vettore Oracle Spatial, clicca il pulsante mActionAddOracleLayer Aggiungi vettore Oracle Spatial.

  • Scegli la connessione dal menu a tendina e clicca su [Connetti].

  • Seleziona/deseleziona checkbox Mostra anche le tabelle senza geometria.

  • Spunta la casella di controllo checkbox Opzioni di ricerca per specificare quali elementi caricare dal vettore oppure usa [Imposta filtro] per avviare la finestra di dialogo Costruttore interrogazioni.

  • Scegli il vettore che vuoi caricare dalla lista di quelli disponibili.

  • Seleziona il vettore cliccando sul nome. Puoi selezionare più vettori tenendo premuto il tasto Shift mentre stai selezionando. Vedi la sezione Costruttore di interrogazioni per informazioni su come usare il Costruttore di interrogazioni Oracle.

  • Clicca su [Aggiungi] per aggiungere il vettore alla mappa.

Suggerimento

Vettori Oracle Spatial

Normalmente un vettore Oracle Spatial è definito con una voce nella tabella USER_SDO_METADATA.