GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf ·...

79
Marco Negretti Politecnico di Milano e-mail: [email protected] http://geomatica.como.polimi.it GRASS 6.4 1. introduzione 13/12/2013

Transcript of GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf ·...

Page 1: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

Marco NegrettiPolitecnico di Milano

e-mail: [email protected]://geomatica.como.polimi.it

GRASS 6.41. introduzione

13/12/2013

Page 2: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

2

indice

introduzione struttura dell'archivio utilizzare GRASS con i dati demo di Spearfish gestione dell'archivio visualizzare carte raster e vettoriali tabella degli attributi dei dati vettoriali definire i colori per le carte raster e vettoriali il workspace navigare e interrogare la cartografia legenda e barra di scala stampa

Page 3: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

3

introduzione

GRASS

Geographic Resources Analysis Support System

E' un Sistema Informativo Geografico (GIS) utilizzato per la gestione, l'elaborazione, il modellamento spaziale e la visualizzazione di dati geografici✔ http://grass.osgeo.org/

Page 4: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

4

introduzione

GRASS è un software libero/open source rilasciato con licenza GNU General Public License (GPL) >= V2✔ http://www.gnu.org/licenses/gpl.html

Può essere utilizzato, modificato e ridistribuito rispettando i termini della licenza GNU GPL

Originariamente scritto, sviluppato, gestito e diffuso dall'U.S. Army Construction Engineering Research Laboratories (USA-CERL, 1982-1995), sezione dell'US Army Corp of Engineers, come strumento per la gestione del territorio e la pianificazione ambientale per scopi militari

Page 5: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

5

introduzione

E' diventato rapidamente un potente strumento in un ampio campo di applicazioni in molte differenti aree della ricerca scientifica

GRASS è attualmente utilizzato in tutto il mondo in ambienti accademici e commerciali, in molti settori governativi, che includono NASA, NOAA, USDA, DLR, CSIRO, il National Park Service, l' U.S. Census Bureau, USGS, e in molte compagnie di consulenza ambientale

Page 6: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

6

introduzione

GRASS è sviluppato da una rete mondiale di operatori che continuano a rilasciare con regolarità nuove versioni

Include centinaia di moduli per elaborare dati (2D e 3D) raster, vettoriali e immagini multispettrali, restituire carte ed immagini sul monitor e su carta, immagazzinare dati con connessioni a diversi DBMS (PostgreSQL, ed altri tramite ODBC)

Page 7: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

7

introduzione

Il codice sorgente di GRASS è scritto in ANSI-C ed è POSIX compliant. Questo permette di utilizzarlo sulla maggior parte dei sistemi UNIX, incluso Linux, su MacOX e su MS-Windows

GRASS è un progetto dell'Open Source Geospatial Foundation✔ http://www.osgeo.org/

Page 8: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

8

introduzione

Il team di sviluppo di GRASS rende disponibili diverse versioni del sw:✔ GRASS 6.4.x è la nuova versione stabile

✔ GRASS 6.5 è la versione di sviluppo di GRASS 6, consigliata per gli sviluppatori, meno per la produzione

✔ GRASS 7 è la nuova versione di GRASS, in fase di sviluppo

Page 9: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

9

introduzione - download

E' possibile scaricare i file sorgenti e poi compilarli

Oppure utilizzare uno dei pacchetti precompilati della versione 6.4✔ Arch Linux, Debian, Fedora, Gentoo, Linux Mint,

Mageia, OpenSUSE, RedHat Enterprise Linux, Ubuntu

✔ MacOSX, Windows

http://grass.osgeo.org/download/software/

Page 10: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

10

introduzione - download

In alternativa all'installazione, per iniziare, sono a disposizione versioni su live DVD e Virtual Machine:✔ OSGEO Live GIS Disc

✔ Italian GRASS Virtual Machine(Università di Trento)

✔ VigerGIS(Laboratorio di Geomatica - Politecnico di Milano)

✔ ...

http://grass.osgeo.org/download/software/live-cdrom/

Page 11: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

11

introduzione - i moduli di GRASS

GRASS è organizzato in moduli (comandi) Ad ogni modulo corrisponde una determinata

funzione E' possibile utilizzare i moduli mediante

✔ interfaccia grafica (GUI)

✔ direttamente da linea di comando

Page 12: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

12

introduzione - i moduli di GRASS

Per usare un comando di GRASS: cercarlo nei menu della GUI

help del comando

nome del comando

definizione dei parametri di esecuzione

linea di comando che sarà eseguita premendo sul tasto

run

Page 13: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

13

introduzione - i moduli di GRASS

Per usare un comando di GRASS: da linea di comando, nella scheda “command

console”:✔ indicare il nome del comando e

invio per aprire direttamente la finestra senza cercare nei menu

✔ specificare direttamente le opzioni per eseguire il comando senzautilizzare la GUI– dalla command console– dalla shell

13

Page 14: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

14

introduzione - i moduli di GRASS

Il campo di azione di un modulo è identificato dalla stringa a sinistra del punto:✔ g.xxxx => generali - es: g.region

✔ r.xxxx => per i raster - es: r.mapcalc, r.buffer

✔ r3.xxxx => per i raster 3D - es: r3.mapcalc

✔ v.xxxx => per i vettoriali - es: v.buffer

✔ i.xxxx => per le immagini - es: i.fft

✔ d.xxxx => di visualizzazione - es: d.rast, d.vect

✔ db.xxxx => per la connessione ai DB - es: db.connect

✔ ps.xxxx => per la stampa - es: ps.map

✔ m.xxxx => comandi vari (misellaneous) - es: m.proj

Page 15: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

15

introduzione - manuali GRASS è ben documentato I manuali delle varie versioni sono on-line:

✔ http://grass.osgeo.org/documentation/manuals/

Per la versione 6.4, utilizzata come riferimento:✔ http://grass.osgeo.org/grass64/manuals/index.html

Ad ogni comando corrisponde una pagina, ad esempio, per il comando d.rast:✔ http://grass.osgeo.org/grass64/manuals/d.rast.html

che più semplicemente, in questa dispensa sarà indicata come:✔ http://path_to_man/d.rast.html

Page 16: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

16

struttura dell'archivio

L'organizzazione dei dati di GRASS è di tipo gerarchico ed è stata pensata per gestire in modo efficiente l'accesso multiutente ai dati e la loro condivisione

I dati di GRASS sono contenuti tutti all'interno di una directory, GISDBASE, che deve essere creata prima di utilizzare GRASS

/home/GRASSDB/GISDBASE

Page 17: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

17

struttura dell'archivio

All'interno della GISDBASE i dati sono organizzati in directory chiamate LOCATION✔ ogni location contiene dati omogenei dal punto di

vista del sistema di riferimento e dell'estensione geografica

/home/GRASSDB/GISDBASE

COMO GENOVA MODENALOCATION

Page 18: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

18

struttura dell'archivio

In ogni LOCATION ci sono una o più directory chiamate MAPSET

I mapset sono le aree di lavoro degli utenti che accedono ai dati della location✔ ad ogni mapset corrisponde un utente

/home/GRASSDB/GISDBASE

COMO GENOVA MODENALOCATION

PERMANENT utente01 utente02MAPSET

Page 19: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

19

struttura dell'archivio

Accesso ai dati di un mapset✔ l'accesso in lettura/scrittura ai dati di un mapset è

consentito solo al proprietario del mapset

✔ per default ogni utente ha accesso in lettura ai mapset degli altri utenti

Mapset PERMANENT✔ viene creato da GRASS quando si crea la location

✔ sono definite le proprietà della location, valide per tutti gli altri mapset della location– sistema di riferimento, estensione, risoluzione...

✔ contiene i dati comuni da condividere con tutti gli utenti della location

Page 20: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

20

struttura dell'archivio - dati raster

I dati raster sono memorizzati in una matrice numerica di N righe per M colonne i cui elementi rappresentano ciascuno una porzione di forma rettangolare di territorio

Ogni matrice contiene N x M valori numerici, ciascuno per ogni cella, che descrivono la corrispondente porzione di territorio

Si possono utilizzare matrici di valori interi e in virgola mobile

Page 21: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

21

struttura dell'archivio - dati raster

I dati di ogni carta raster sono distribuiti su più file residenti in sottodirectory tematiche del mapset

COMOLOCATION

PERMANENT utente01 utente02MAPSET

catscolrcell_misccell cellhdfcell histDATI

Page 22: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

22

struttura dell'archivio - dati raster

Esempio✔ gisdbase: GRASSDB

✔ location: spearfish60

✔ mapset: user1

✔ carta raster: elevation.dem

Page 23: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

23

struttura dell'archivio - dati raster

directory cell - fcell✔ matrice numerica in formato binario con i dati della

carta– cell => valori interi– fcell => valori in virgola mobile

directory cellhd✔ file di testo con l’intestazione (header)

directory cell_misc✔ ad ogni raster corrisponde una directory con 2 file:

– range: definisce massimo e minimo valore della carta raster

– null: definisce le celle a valore nullo

Page 24: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

24

struttura dell'archivio - dati raster

directory cats✔ contiene il file con l'elenco

delle categorie, corredate eventualmente da una descrizione

directory colr/colr2✔ Contiene il file con la tavola dei

colori definiti nel formato RGB:cat:r:g:b

directory hist✔ Contiene il file con

le meta informazioni24

Page 25: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

25

struttura dell'archivio - dati vettoriali

Le carte vettoriali sono contenute all'interno della directory vector✔ ad ogni carta vettoriale corrisponde una directory

all'interno della quale ci sono i file che definiscono le proprietà geometriche della carta

Gli attributi sono memorizzati per default in tabelle dbf all'interno della directory dbf

COMOLOCATION

PERMANENT utente01 utente02MAPSET

dbfvectorDATI

Page 26: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

26

struttura dell'archivio - dati vettoriali

Esempio✔ gisdbase: GRASSDB

✔ location: spearfish60

✔ mapset: user1

✔ carta vettoriale: roads

Page 27: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

27

struttura dell'archivio - dati vettoriali

file coor, cidx, topo✔ file binari con geometria, indici spaziali e topologia

file head✔ intestazione (header)

file dbln✔ tipo di connessione al database

file hist✔ meta informazioni

Page 28: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

28

struttura dell'archivio - dati vettoriali

Gli attributi della carta vettoriale sono:✔ in tabelle DBF, all'interno della directory dbf

✔ oppure è possibile utilizzare dei database esterni:– PostgreSQL– SQLite– MySQL– qualsiasi altro DB via ODBC

Page 29: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

29

utilizzare GRASS con i dati di demo spearfish

1. creare la directory principale (GISDBASE) dove si ritiene più opportuno

2. scaricare i dati demo spearfish_grass60data.tar.gz

http://grass.osgeo.org/download/sample-data/

3. decomprimere il file scaricato al punto 2 all'interno della GISDBASE creata al punto 1

➔ si così ottiene una location prontada utilizzare con GRASS

29

Page 30: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

30

utilizzare GRASS con i dati di demo spearfish E' possibile avviare GRASS scegliendo tra due

interfacce grafiche (GUI) diverse:✔ tcltk => GUI di default fino a GRASS 6

✔ wxpython => la nuova GUI di GRASS

per Linux, da linea di comando– grass64 -tcltk– grass64 -wxpython

per windows (dipende...)✔ Es. QGIS-OSGEO4W package:

In queste dispense si utilizzerà la nuova GUI wxpython

http://path_to_man/grass6.html

Page 31: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

31

utilizzare GRASS con i dati di demo spearfish

Avviare GRASS e indicare GISDBASE, LOCATION eMAPSET:

GISDBASEdipende da dove si è estratta la location spearfish

LOCATIONscegliere spearfish60

MAPSETscegliere user1

avviare GRASS 31

Page 32: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

32

utilizzare GRASS con i dati di demo spearfish

layer manager- proprietà layer- gestione dell'archivio- accesso ai comandi di GRASS- console

map displayfinestra di visualizzazione

http://path_to_man/wxGUI.html

La GUI wxpython:

Page 33: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

33

utilizzare GRASS con i dati di demo spearfish

Il terminale:

Page 34: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

34

gestione dell'archivio

L'archivio di GRASS è complesso Nel menu "Manage maps and volumes" ci sono

i moduli per✔ copiare dati da un altro mapset o da quello corrente

✔ visualizzare i dati presenti nei mapset

✔ rinominare i dati del mapsert corrente

✔ cancellare i dati dal mapset corrente

Page 35: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

35

gestione dell'archivio - alcuni esempi

Copiare i seguenti dati dal mapset (g.copy) PERMANENT al mapset corrente user1:✔ road (vettoriale)✔ elevation.dem (raster)

Perché copiarli?✔ I dati in PERMANENT

sono accessibili solo in lettura✔ I dati nel mapset corrente sono accessibili in

lettura/scrittura

✔ per iniziare con qualcosa di semplice

Page 36: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

36

gestione dell'archivio - alcuni esempi

Vedere quali dati ci sono nell'archivio (g.list)✔ selezionare il/i tipo/i di dati che si vogliono

visualizzare– nell'esempio i dati raster e vettoriali 2D

Page 37: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

37

gestione dell'archivio - alcuni esempi

✔ nel mapsetuser1

✔ nel mapsetPERMENENT

Vedere quali dati ci sono nell'archivio

raster

vettoriali

Page 38: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

38

gestione dell'archivio - alcuni esempi

Provare da linea di comando a lanciare i seguenti comandi:✔ g.copy rast=slope@PERMANENT,slope

vect=railroads,railroads– copia slope e railroad dal mapset PERMANENT a quello

corrente✔ g.rename vect=railroads,ferrovie

rast=slope,pendenza– cambia i nomi, da railroads a ferrovie e da slope a

pendenza (lavora nel mapset corrente)✔ g.list type=vect,rast

– elenca i file vettoriali e raster a cui si ha accesso✔ g.remove rast=pendenza

– cancella dal mapset corrente il raster pendenza

http://path_to_man/g.copy.html - g.rename.html - g.remove.html - g.list.html

Page 39: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

39

visualizzare i dati - raster

selezionare elevation.dem

mapset

per aggiungere un layer di tipo raster

si ottiene l'elenco di tutte le carte raster del mapset corrente e di tutti quelli ai quali si ha accesso in lettura

Page 40: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

40

visualizzare i dati - raster

Per aggiornare il Map Display con i nuovi layer aggiunti nel Layer Manager

http://path_to_man/d.rast.html

Selezionare render per avere l'aggiornamento

automatico dei contenuti

Page 41: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

41

visualizzare i dati - vettoriali

si ottiene l'elenco di tutte le carte vettoriali del mapset corrente e di tutti quelli ai

quali si ha accesso in lettura

per aggiungere un layer di tipo vettoriale

selezionare roads

mapset

Page 42: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

42

visualizzare i dati - vettoriali

Per aggiornare il Map Display con i nuovi layer aggiunti nel Layer Manager

http://path_to_man/d.vect.html

Page 43: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

43

tabella degli attributi dei dati vettoriali

Ad ogni oggetto vettoriale sono associate delle informazioni => attributi

Gli attributi sono organizzati in tabelle La connessione tra dato vettoriale e tabella

degli attributi può essere gestita in diversi modi:✔ pg (PostgreSQL), odbc, mysql, ogr, dbf, sqlite

Ad ogni riga della tabella corrisponde un oggetto geometrico e viceversa

Page 44: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

44

tabella degli attributi dei dati vettoriali

Per default GRASS utilizza il driver dbf:✔ gli attributi sono su file dbf

✔ questi file sono in $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/– dove:

$GISDBASE è la "GIS data directory" indicata all'avvio di GRASS$LOCATION è la location corrente$MAPSET è il mapset corrente

Page 45: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

45

tabella degli attributi dei dati vettoriali

Per gestire la connessione alle tabelle degli attributi dei dati vettoriali:✔ per tutti i dati del mapset corrente

– “manage databases”

✔ per una determinata carta vettoriale– “vector database connections”

Page 46: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

46

tabella degli attributi dei dati vettoriali

Visualizzare i parametri della connessione corrente

– db.connect

http://path_to_man/db.connect.html

Page 47: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

47

tabella degli attributi dei dati vettoriali

Per modificare la struttura di una tabella, visualizzarne e modificarne il contenuto è possibile:➢ utilizzare il tasto "show attribute table"

nel layer manager– modalità accessibile solo dalla GUI

➢ utilizzare i comandi db.xxxx, v.db.xxxx– questi comandi sono sempre accessibili, da GUI e da

linea di comando

Page 48: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

48

tabella degli attributi dei dati vettoriali

Dal layer manager, selezionare il vettoriale di interesse (es. roads) e click sul tasto "show attribute table" per visualizzare la tabella

Page 49: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

49

tabella degli attributi dei dati vettoriali

Visualizzare i dati contenuti nella tabella

doppio click su una riga per evidenziare sul map display

l'elemento vettoriale corrispondente

definizione di query per visualizzare dati parziali

Page 50: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

50

tabella degli attributi dei dati vettoriali

Per modificare i dati contenuti nella tabella

tasto dx per modificare il valore dell'attributo selezionato,

cancellare righe, inserirne di nuove...

Page 51: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

51

tabella degli attributi dei dati vettoriali

Modificare i dati contenuti nella tabella nel seguente modo✔ 1 => "autostrade federali"

✔ 2 => "autostrade principali"

✔ 3 => "autostrade secondarie"

✔ 4 => "strade principali"

✔ 5 => "strade secondarie"

Page 52: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

52

tabella degli attributi dei dati vettoriali

Tabella aggiornata:

Page 53: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

53

tabella degli attributi dei dati vettoriali

Visualizzazione ed editing della struttura

per cancellare una colonna: tasto dx, poi nel menu drop column

per aggiungere una colonna:definire nome e tipo nei rispettivi campi

per rinominare una colonna:indicare la colonna da rinominare con il nuovo nome

es. rinominare label come classe

Page 54: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

54

definire i colori

Definizione dei colori✔ i colori sono definiti utilizzando la codifica RGB

(Red, Green, Blue)– per definire un qualsiasi colore si assegna a ciascuna

delle tre componenti un valore compreso tra 0 e 255, dove zero indica assenza del colore e 255 intensità massima

– il colore sarà definito dalla combinazione delle tre componenti fondamentali

– Ad esempio:– R=0, G=255, B=0 => verde– R=255, G=255, B=0 => giallo– R=127, G=127, B=127 => grigio– R=127, G=0, B=127 => magenta– R=0, G=0, B=0 => nero– R=255, G=255, B=255 => bianco

Page 55: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

55

definire i colori per una carta raster

Per associare i colori ad una carta raster è necessario stabilire una relazione tra valori numerici del raster e colori

Questa relazione è definita in un file di testo (directory colr/colr2 del mapset) che chiameremo "tabella dei colori"

Per costruire la tabella dei colori si può utilizzare strumento “Color rules”

Page 56: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

56

definire i colori per una carta raster

Si possono definire degli intervalli di valori e associare i colori agli estremi di questi intervalli

– carta elevation.dem– i colori per i valori

intermedi sono calcolati da GRASS interpolando i tre valori RGB associati agli intervalli

Page 57: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

57

definire i colori per una carta raster

Es. eliminare l'intervallo 1400 m per definire una nuova scala di colori senza l'arancione

– il tasto preview permette di vedere una anteprima con la nuova tabella dei colori applicata al dato

Page 58: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

58

definire i colori per una carta raster

Si può definire un colore per ogni valore diverso del raster

– carta owner(mapset PERMANENT)

Page 59: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

59

definire i colori per una carta raster

Esempio, modificare i colori di owner:✔ 1 => 144,238,144 e 2 => 255,192,203

– in questo caso non può essere modificato il file in colr del mapset PERMANENT

– viene quindi creato un file in colr2 nel mapset corrente (user1)

Page 60: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

60

definire i colori per una carta raster

In alternativa, utilizzare direttamente r.colors per avere accesso a tutte le funzionalità del comando

http://path_to_man/r.colors.html

Page 61: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

61

definire i colori per una carta vettoriale

Es. layer rstrct_areas (mapset PERMANENT)✔ aggiungere il layer nel

layer manager

✔ aprire la scheda delle proprietà del layer(tasto dx sul nomedel layer, properties)

Page 62: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

62

definire i colori per una carta vettoriale

Definire✔ colore bordo: 160 32 240

✔ colore area: 173 216 230

http://path_to_man/d.vect.html

Page 63: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

63

definire i colori per una carta vettoriale

Se si vogliono definire colori diversi per i diversi elementi di una stessa carta è necessario creare una nuova colonna nella tabella degli attributi che contenga i valori RGB da associare agli elementivettoriali

✔ creare il nuovo attributo GRASSRGB

Page 64: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

64

definire i colori per una carta vettoriale

Definire le regole per la costruzione della tabella dei colori con lo strumento “Color rules”

Es. per il layer roads definire i seguenti colori in funzione dell'attributo cat✔ 0 => 0,0,0✔ 1 => 255,0,0✔ 2 => 0,255,0✔ 3 => 255,165,0✔ 4 => 30,144,255✔ 5 => 173,216,230

Page 65: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

65

definire i colori per una carta vettoriale

I nuovi colori del layer roads✔ i nuovi colori sono memorizzati come attributo del

layer vettoriale

Page 66: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

66

definire i colori per una carta vettoriale

Per visualizzare sul map display il layer con i colori così definiti, modificare le proprietà del layer:

http://path_to_man/d.vect.html

✔ tasto destro sul nome del layer, selezionare properties

✔ indicare di utilizzare la colonna RGB (per default GRASSRGB) per colorare il vettoriale

Page 67: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

67

definire i colori per una carta vettoriale

In alternativa, utilizzare direttamente v.colors per avere accesso a tutte le funzionalità del comando

http://path_to_man/v.colors.html

Page 68: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

68

il Workspace

L'elenco dei layer aggiunti nel layer manager, con le proprietà di visualizzazione associate, può essere salvato in un file e utilizzato in una successiva sessione di lavoro✔ file con estensione gxw

Page 69: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

69

navigare la cartografia

✔ cancellare il display

✔ puntatore

✔ pan

✔ zoom in

✔ zoom out

✔ ritorna allo zoom precedente

Page 70: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

70

interrogare la cartografia

Selezionare i layer che si vogliono interrogare✔ roads e elevation.dem

✔ tasto CTRL perfare la selezione multipla

Click sul tasto di interrogazione

Click sul punto della carta da interrogare

Page 71: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

71

interrogare la cartografia

raster: comandoe risultato

vettoriale: comandoe risultato

http://path_to_man/r.what.html http://path_to_man/v.what.html

Page 72: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

72

legenda e barra di scala

Per aggiungere dei contenuti descrittivi sovrapposti alla cartografia visualizzata✔ tasto “add map elements”

Quindi selezionare l'oggetto che si vuole aggiungere✔ barra di scala e punti cardinali

✔ legenda

✔ testo

Page 73: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

73

legenda e barra di scala

✔ barra di scala e freccia dei punti cardinali

http://path_to_man/d.barscale.html

Page 74: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

74

legenda e barra di scala

✔ legenda

Page 75: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

75

legenda e barra di scala

✔ legenda

http://path_to_man/d.legend.html

Definire la posizione utilizzando l'opzione at o direttamente sul map display cliccando su set size and position

Page 76: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

76

legenda e barra di scala

Risultato

Page 77: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

77

impostazioni pagina

stampa dello schermo

Nel Map Display, utilizzare il tasto“print display”

anteprima

stampa

Page 78: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

78

link utili

Home page GRASS:✔ http://grass.osgeo.org

Home page GRASS Italia:✔ http://grass-italia.como.polimi.it/

Tutorial on-line dell'Università di Trento:✔ http://www.ing.unitn.it/~grass/docs/tutorial_642/

Page 79: GRASS 6 - laboratorio di geomaticageomatica.como.polimi.it/corsi/sw_gis/grass64_introduzione.pdf · (Laboratorio di Geomatica - Politecnico di Milano) ... file di testo con l’intestazione

79

http://creativecommons.org/licenses/by-nc-nd/3.0/

Versione utilizzata come riferimento nelle dispense:GRASS 6.4.3