MARCO NEGRETTI MARIA A. BROVELLI G.R.A.S.S Geographic Resources Analysis Support System ESERCIZI INTRODUTTIVI

Documenti analoghi
INDICE. Vista Libretto Livello Digitale 2. Importazione di dati da strumento 3. Inserisci File Vari 5. Compensazione Quote 5.

Autodesk Map parte I digitalizzazione e importazione dati

ArcGIS - ArcView ArcCatalog

Introduzione a MapGuide Author 6.5

WINDOWS Avviare Windows95. Avviare Windows95 non è un problema: parte. automaticamente all accensione del computer. 2. Barra delle applicazioni

Manuale d uso DropSheep 4 imaio Gestione Pixmania-PRO Ver 1.1

Importazione dati. e/fiscali Spesometro - Rel con gestionale e/satto. Gestionale e/satto

INTRODUZIONE A GRASS Geographic Resources Analysis Support System

Grafici. 1 Generazione di grafici a partire da un foglio elettronico

ACCESS. Database: archivio elettronico, dotato di un programma di interfaccia che facilita la registrazione e la ricerca dei dati.

La segreteria didattica dovrà eseguire semplici operazioni per effettuare lo scrutinio:

Grafici e Pagina web

Modulo 17: Invio del BF tramite

Procedura operativa per la gestione della funzione di formazione classi prime

NUVOLA COMUNICAZIONI

Come utilizzare i riferimenti assoluti e relativi in Microsoft Excel

Un grafico utilizza i valori contenuti in un foglio di lavoro per creare una rappresentazione grafica delle relazioni esistenti tra loro;

Strumento di conversione DWG/DXF

DOCUMENTAZIONE WEB RAIN - ACCESSO CLIENTI

Video Scrittura (MS Word) Lezione 2 Tabelle e Immagini

I dati rappresentati (tutti di pura fantasia) sono contenuti in un file excel denominato Personale.xls.

ISCRIZIONI E MAV ON-LINE

EXCEL: FORMATTAZIONE E FORMULE

Costruttore di numeri della WebDewey

Quick Print. Quick Print. Guida Utente. Copyright 2013 Hyperbolic Software.

Note_Batch_Application 04/02/2011

Guida Compilazione Questionario SCUOLA DELL INFANZIA PARITARIA

Word Formattazione del testo. Samuele Mazzolini

Trasformazione di coordinate di file catastali vettoriali

PowerDIP Software gestione presenze del personale aziendale. - Guida all inserimento e gestione dei turni di lavoro -

IMPORTAZIONE PRESENZE DA RILEVATORI ELETTRONICI. tramite file tracciato

MANUALE UTENTE PROCEDURA PLANET WEB INTERPRISE (II edizione)

Fondamenti di Informatica

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.

GUIDA RAPIDA EDILCONNECT

WINDOWS TERMINAL SERVER PER L ACCESSO REMOTO AL SISTEMA DI PROTOCOLLO INFORMATICO

Gestione risorse (Windows)

Guida all utilizzo di Campaign Builder

Servizio Conservazione No Problem

Browser cartografico

INTRODUZIONE ALLE BASI DATI RELAZIONALI

Informatica d ufficio

AUTOCAD: INTERFACCIA AUTOCAD: INTERFACCIA 2 AUTOCAD: INTERFACCIA. 2.1 premessa: ABBREVIAzIONI E ICONE 2.2 SCELTA DELL INTERFACCIA. ICONE Cmd Mnu.

Manuale di Aggiornamento BOLLETTINO. Rel B. DATALOG Soluzioni Integrate a 32 Bit

PSICOMETRIA. Esercitazione n.1. C.d.L. Comunicazione e Psicologia a.a. 2012/13

Automatizzare le attività con le macro di Visual Basic

I grafici a torta. Laboratorio con EXCEL. 1 Come si costruisce un grafico a torta

FUNZIONI DI BASE PANNELLO SMS

OPERAZIONI CHIUSURA E APERTURA Note operative

LA PREDISPOSIZIONE DEL BILANCIO IN FORMATO XBRL

Oggetto: Utility per la variazione massiva del codice IVA.

GALLERY. Album immagini

VARIAZIONI AL PROGRAMMA ANNUALE PER MAGGIORI ENTRATE

Informatica e Informatica di Base

ELENCHI DEL PERSONALE

Indice. Ricerca richiesta d offerta. Risultati della ricerca Navigazione Stati

L INTERFACCIA GRAFICA DI EXCEL

Manuale d utilizzo. Indice:

PowerPoint passo dopo passo (step by step) Step 1 Avvia PowerPoint. Step 2 Scegli il Layout. Step 3 Crea la prima diapositiva

* in giallo le modifiche apportate rispetto alla versione precedente datata 17/04/2012

1 DESCRIZIONE DELLE FUNZIONI REGISTRAZIONE UTENZE INTERNET Caricamento utente internet (data entry)... 3

Ogni PC, per iniziare a lavorare, ha bisogno di un sistema operativo. Infatti questo è il primo programma che viene eseguito e che permette

MANUALE DI UTILIZZO DEL PORTALE WEB

Indice. Introduzione Collegamento iniziale Identificazione della sede operativa (sede di lavoro) 5

Modulo 2 Test di verifica

VARIAZIONI AL PROGRAMMA ANNUALE PER STORNO TRA VOCI USCITA

Installazione del driver Custom PostScript o del driver della stampante PCL per Windows

Uso del pannello operatore

Valutazione del personale

testo Saveris Web Access Software Istruzioni per l'uso

SQL Server Architettura Client-Server. SQL Server Introduzione all uso di SQL Server Dutto Riccardo.

Guida introduttiva su Eclipse. Ing. Marco Dell'Unto

TUTORIAL LIBRI IN SIMBOLI

GUIDA RAPIDA PER LA GESTIONE DELLE ADOZIONI LIBRI DI TESTO 2016/2017

Formattare il testo con gli stili

GESTIONE TFR IN BASE AL NUOVO PROCESSO DI GESTIONE DEI CONTRATTI DELLA SCUOLA

Gestione Commissioni Esami

per immagini guida avanzata Modificare il contenuto del foglio di lavoro Geometra Luigi Amato Guida Avanzata per immagini Excel

Capitolo 18 - Progetto DWG Creazione del layout di stampa

Manuale registro elettronico per docenti

Supporto On Line Allegato FAQ

Progetto NoiPA per la gestione giuridicoeconomica del personale delle Aziende e degli Enti del Servizio Sanitario della Regione Lazio

ARCHITETTURA FISICA DEL SISTEMA

Funzioni condizionali

Via Oberdan, 42, Faenza (RA) Italy Tel.: Fax: WAVE MODE MOBILE GUIDA RAPIDA

PG5 Starter Training Applicazione File System Daniel Ernst EN Stefano Peracchi IT

Conservatorio D. Cimarosa di Avellino INFORMATICA MUSICALE

Manuale Utente IMPORT PROFIM 2000

Manuale Utente. La Tavola B invece riporta il dettaglio dei vincoli presenti e consente di sapere quali vincoli operano in una determinata locazione.

Lab. di Sistemi Operativi - Esercitazione - Comandi Shell

Analisi Curve di Carico

ACCESSO ALLA POSTA ELETTRONICA TRAMITE OUTLOOK WEB ACCESS

Guida alla gestione delle domande di Dote Scuola per l A.S Scuole Paritarie

Questa è la finestra dei dettagli, è possibile selezionare anche da qui un modello o un pezzo per essere aperto.

ANAGRAFE NAZIONALE CREDITI FORMATIVI. Manuale utente

GEOPORTALE Arpa Piemonte Sistema Informativo Ambientale Geografico

S.C.S. - survey CAD system Tel. 045 / Il menu File contiene tutti i comandi predisposti per:

Ridimensionamento Immagini

Le nuove utenze di accesso a SICO (da quelle di ufficio a quelle personali)

Lo schermo di XTOTEM FREESTYLE

Transcript:

MARIA A. BROVELLI MARCO NEGRETTI G.R.A.S.S. 5.0.0 Geographic Resources Analysis Support System ESERCIZI INTRODUTTIVI Versione 2.1 4 Marzo 2002

0 INTRODUZIONE 1 1 L ARCHIVIO DI GRASS 2 1.1 ORGANIZZAZIONE DELL ARCHIVIO 2 1.2 CREAZIONE DI UN ARCHIVIO DI GRASS 3 1.3 I COMANDI DI GRASS 5 1.4 L'INTERFACCIA GRAFICA 6 2 CARTE RASTER 10 2.1 IL FORMATO DELLE CARTE RASTER 10 2.2 IMPORTARE DATI RASTER IN GRASS 13 2.3 VISUALIZZARE I DATI RASTER 14 3 CARTE VETTORIALI 21 3.1 FORMATO DELLE CARTE VETTORIALI 21 3.2 IMPORTARE CARTE VETTORIALI 22 3.3 VISUALIZZARE LE CARTE VETTORIALI 23 4 PUNTI SPARSI 25 4.1 FORMATO PUNTI SPARSI 25 4.2 IMPORTARE UN ELENCO DI PUNTI SPARSI 25 4.3 VISUALIZZARE I PUNTI SPARSI 26 5 REGIONE DI VISUALIZZAZIONE E INTERROGAZIONE DELLE CARTE 28 5.1 IMPOSTAZIONE DELLA REGIONE DI VISUALIZZAZIONE 28 5.2 INTERROGAZIONE DELLE CARTE DAL MONITOR 32 6 GESTIONE E ACCESSO AI DATI DELL'ARCHIVIO 36 6.1 MODALITÀ DI ACCESSO AI DATI 36 6.2 COPIARE, RINOMINARE, CANCELLARE UNA CARTA 39 I

0 Introduzione La versione di GRASS 1 a cui si fa riferimento è la 5.0.0pre1. GRASS è un GIS public domain ed è distribuito gratuitamente via internet con il codice sorgente; è quindi possibile estenderne facilmente le funzionalità, creando nuovi comandi che permettano di svolgere funzioni non previste in quello che è il codice originale. E stato sviluppato a partire dal 1992 dall USACERL 2 ; dal 95 si occupa del suo sviluppo il GRASS Development Team che ha due sedi principali: il Center for Applied Geographical and Spatial Research all'università Baylor di Waco nel Texas (http://www.baylor.edu/grass/) e L ITC-irst di Trento (http://grass.itc.it). Caratteristiche principali del software. Ambiente di sviluppo: UNIX. Tipi di dati trattati: raster, vettoriali, immagini. Potenzialità dei comandi: ottimo per quanto riguarda i raster, carente per quanto riguarda la definizione di proprietà topologiche sui vettori, eccezione: punti sparsi. Per questo formato dei dati si hanno a disposizione dei comandi dedicati, indipendenti da quelli forniti per i generici dati vettoriali. 1 Geographic Resources Analysis Support System 2 United States Army Construction Engineering Research Laboratory 1

1 L archivio di GRASS 1.1 Organizzazione dell archivio L organizzazione dell archivio di GRASS sfrutta la struttura gerarchica delle directory del sistema UNIX (figura F 1). GISDBASE: è la directory principale, contiene l insieme dei dati di GRASS, definisce la posizione nel file system dell archivio di GRASS. Location: ogni base di dati indipendente è organizzata in una propria location; a questo livello viene definito il sistema di riferimento, i limiti geografici, il tipo di rappresentazione cartografica e la risoluzione delle carte contenute. Ogni location è oraganizzata come sottodirectory di GISDBASE. Mapset: ogni utente che fa riferimento ad una location ha un proprio mapset (o più mapset per progetti diversi) dentro il quale si trovano le carte sulle quali vuole apportare modifiche. Ogni mapset eredita le definizioni cartografiche (sistema di riferimento, rappresentazione cartografica e risoluzione) stabilite nella location di cui è sottodirectory. GISDBASE location 1 location 2... mapset 1 mapset 2... PERMANENT SEARCH_PATH WIND cats cell... F 1 - La struttura dell archivio di GRASS All interno di ogni location, oltre alle directory che definiscono i vari mapset viene sempre creata al momento della definizione della location una directory speciale, chiamata PERMANENT nella quale sono contenute: le carte originali alle quali i singoli utenti potranno fare riferimento in lettura; se l utente vuole modificare una carta presente in PERMANENT dovrà farsene prima una copia nel proprio mapset; un file chiamato MYNAME nel quale è indicato il nome della location corrente; 2

L ARCHIVIO DI GRASS un file chiamato DEFAULT_WIN nel quale sono definiti i limiti della regione di default, al quale GRASS fa riferimento quando all interno della location viene creato un nuovo mapset; eventualmente file necessari per definire altre proprietà della location, la loro presenza dipende dal tipo di proiezione che si è scelto di utilizzare. All interno di ogni mapset si trovano: le carte che il proprietario del mapset ha deciso di importare; un file chiamato WIND nel quale sono definiti i limiti della regione di visualizzazione corrente; un file chiamato SEARCH_PATH che permette di accedere ai dati contenuti negli altri mapset definiti nella medesima location. L accesso ai dati contenuti in un archivio di GRASS è gestito dal GIS seguendo regole precise e semplici: un utente può selezionare un mapset come corrente solo se ne è il proprietario; un utente può modificare con GRASS unicamente le carte contenute nel mapset corrente; un utente può accedere in lettura ai dati di tutti gli altri mapset contenuti nella location corrente se non indicato diversamente dal proprietario del mapset. 1.2 Creazione di un archivio di GRASS Per iniziare una nuova sessione di lavoro in GRASS è sufficiente digitare grass5, o simile, in funzione delle modalità di installazione, dalla linea di comando della shell di UNIX (C 1). # grass5 C 1 - Esecuzione di GRASS La finestra di apertura di GRASS è mostrata nella figura F 2; per accedere a GRASS è necessario specificare: l archivio nel quale si vuole entrare <directory GISDBASE> (se non esiste già una directory di archivio è necessario crearle prima di utilizzare GRASS, ad esempio in C 2 viene creata una directory grassdb all interno della home dell utente marco); la base di dati <directory LOCATION> (si può indicare una location esistente oppure crearne una nuova utilizzando il tasto Create New Location); l insieme di carte sul quale si vuole operare <directory MAPSET> (anche in questo caso si può utilizzare un mapset già esistente o crearne uno nuovo, sempre utilizzando il tasto Create New Location); La localizzazione dei dati su cui si vuole operare viene quindi fatta indicando il path completo della directory principale mentre location e mapset sono indicati specificandone semplicemente il nome. Per creare una nuova location è necessario avere una serie di informazioni (figura F 3) relative alle caratteristiche della rappresentazione cartografica che si vuole utilizzare, come il tipo di proiezione e le dimensioni della regione di riferimento. A seconda del tipo di proiezione scelta dovranno poi essere specificati altri dati (ad esempio se si sceglie come proiezione latitudinelongitudine è necessario indicare l ellissoide di riferimento). Con la nuova location verranno creati anche il mapset dell'utente ad il mapset speciale chiamato PERMANENT. La creazione di una nuova location o di un nuovo mapset quindi deve essere fatta utilizzando GRASS e non direttamente da linea di comando come è stato fatto in C 2 per la directory GISDBASE. 3

L ARCHIVIO DI GRASS F 2 - Finestra di dialogo iniziale di GRASS # mkdir /home/marco/grassdb C 2 - Esempio di creazione della directory principale dell archivio F 3 - Dati necessari per creare una nuova location 4

L ARCHIVIO DI GRASS 1.3 I comandi di GRASS Una volta specificati questi dati iniziali si può iniziare ad operare con GRASS. E' possibile utilizzare sia la linea di comando (F 4) che l'interfaccia grafica tcltkgrass (F 5). F 4 - GRASS da linea di comando F 5 - Interfaccia grafica exit Per terminare la sessione di lavoro corrente e tornare alla shell di UNIX (C 3). GRASS > exit C 3 - Terminare la sessione di lavoro in GRASS 5

L ARCHIVIO DI GRASS A parte il comando exit i nomi di tutti gli altri comandi sono composti da almeno due parti separate da un punto: la prima parte specifica la tipologia del comando (figura F 6); la seconda indica il nome effettivo del comando. Moduli generali (g.xxxxxx). Moduli di analisi raster (r.xxxxxx). Moduli di analisi vettoriale: curve ed aree (v.xxxxxx). Moduli di analisi vettoriale: punti sparsi (s.xxxxxx). Moduli di trattamento delle immagini (i.xxxxxx). Moduli di analisi di modelli digitali del terreno (r.xxxxxx). Moduli per la visualizzazione a schermo (d.xxxxxx). Moduli per la stampa (p.xxxxxx). Più altri moduli specialistici. F 6 - Raggruppamenti dei comandi di GRASS La maggior parte dei comandi in linea di GRASS può funzionare in due modi: in linea, si specificano di seguito al comando tutte le opzioni necessarie per definire le modalità di funzionamento; in modo interattivo, si dà il comando senza opzioni, verranno quindi poste una serie di domande per specificare i valori dei parametri del comando. Generalmente è possibile ottenere un aiuto in linea digitando il nome del comando seguito dall opzione help: in questo modo si otterrà l elenco dei parametri del comando e una loro breve descrizione. 1.4 L'interfaccia Grafica L'interfaccia grafica permette di compilare in modo automatico la riga di comando. Questo si ottiene riempiendo opportunamente i campi della finestra relativa. In F 7 è riportata, come esempio, la finestra associata al comando d.rast le cui funzionalità verranno illustrate in seguito. Per ora è sufficiente per vedere come si utilizza l'interfaccia. Per questo comando è necessario specificare una opzione <F 8/a> (il nome di una carta raster) e abilitare o meno un flag <F 8/b> (in questo caso quello dell'overlay tra carte): modificando i valori all'interno della finestra verrà generata automaticamente la linea di comando <F 8/c>. F 7 - l'interfaccia grafica di d.rast 6

L ARCHIVIO DI GRASS F 8 - l'utilizzo dell'interfaccia grafica In questo eserciziario si farà riferimento alla posizione all'interno dei menù dei comandi illustrati mediante la descrizione dei menù da aprire. Per d.rast (F 9) la notazione sarà: <rast display display raster maps> F 9 - posizione di d.rast Esercizio 1 creazione dell archivio L obiettivo di questo primo esercizio è la creazione del database di GRASS al quale si farà riferimento nel seguito di questa dispensa. Si dovranno quindi specificare i tre elementi (directory e sottodirectory) del database di GRASS. 1. Gli elementi del database che si vuole creare sono: gisdbase = /home/username/grassdb location = corso mapset = dati 2. Le proprietà cartografiche relative alla nuova location da definire nel database sono: sistema di coordinate: latitudine-longitudine ellissoide: wgs84 limiti della regione di default: nord: 49N sud: 34N est: 21E ovest: 4E risoluzione est-ovest: 0:00:10 risoluzione nord-sud: 0:00:07.5 7

L ARCHIVIO DI GRASS Una volta creato il database uscire da GRASS e verificare che all interno della directory grassdb sia stata creata una sottodirectory corso. All interno di questa ci devono essere altre due sottodirectory: dati, che contiene solo il file di testo WIND, che definisce la regione corrente. PERMANENT, che contiene una serie di file di testo che definiscono le caratteristiche della location corso. Verificarne il contenuto utilizzando il programma vi oppure un qualsiasi altro editor a disposizione (F 10). F 10 - Contenuto del file DEFAULT_WIND Esercizio 2 creazione di un nuovo mapset Questo esercizio prevede la creazione di un nuovo mapset all interno di una location già esistente. All interno della location corso, definita in precedenza (Esercizio 1), creare un nuovo mapset chiamato dati2 Uscire da GRASS e verificare l esito dell operazione; confrontarlo con quello corretto riportato in F 11. 8

L ARCHIVIO DI GRASS F 11 - Elenco de mapset contenuti nella location corso Esercizio 3 creazione di una nuova location L obiettivo di questo esercizio è la creazione di una nuova location, da chiamarsi immagini, sempre all interno dell archivio grassdb creato in precedenza. Le proprietà cartografiche relative alla nuova location da definire nel database sono: sistema di coordinate: x,y limiti della regione di default: nord: 46.2 sud: 45.2 est: 9.3 ovest: 8.5 risoluzione est-ovest: 0.01 risoluzione nord-sud: 0.01 La situazione finale dopo aver svolto questi esercizi è riportata in F 12 F 12 - Situazione dell archivio dopo aver svolto gli esercizi precedenti 9

2 Carte Raster A questo punto l archivio è stato creato, ma è ancora vuoto, ci preoccuperemo ora di popolarlo. GRASS tratta diversi tipi di dati spaziali: raster, vettoriali, immagini,... I dati di GRASS vengono posti in opportune sottodirectory dei mapset in base al tipo di informazione che rappresentano (vedere F 1): in ogni sottodirectory ci saranno quindi tutte le informazioni di uno stesso tipo relative a tutte le carte presenti nel mapset. I mapset dell archivio di GRASS (cap. 1) risultano così composti da diverse directory. Inizialmente ci occuperemo dei dati di tipo raster. 2.1 Il formato delle carte raster I dati della carta sono memorizzati come: matrice a due dimensioni le cui celle rappresentano una porzione di territorio; ad ogni cella viene assegnato una valore che rappresenta il valore corrispondente del dato nella relativa zona. Possono essere create carte raster di due tipi: carte con valori interi e carte con valori a virgola mobile. All interno di un mapset ci sono diverse directory che contengono dati relativi alle mappe raster. Directory cell: contiene le carte raster con il formato dei dati di tipo intero. I dati vengono memorizzati in formato binario utilizzando il formato big-endian, cioè utilizzando come base 256 e mettendo la cifra più significativa come primo byte. I numeri positivi possono occupare da uno a quattro byte, i numeri negativi sono tutti lunghi quattro byte. Directory cellhd: contiene l'intestazione (header) della carta raster (figura F 13). In questo file troviamo le informazioni che descrivono e georeferenziano la carta, come ad esempio le estensioni geografiche della carta, il passo di risoluzione,... Nel dettaglio: proj: indica il tipo di rappresentazione cartografica (0: rappresentazione non referenziata, coordinate x,y dello schermo (pixel); 1: UTM; 2: State Plane, rappresentazione standard USA; 3: rappresentazione geografica con le coordinate latitudine e longitudine). zone: indica a quale zona della rappresentazione appartiene la regione descritta dal file raster. north, south, east, west: sono i limiti geografici della carta raster. Questi confini si riferiscono al bordo esterno delle celle, non al centro. e-w resol, n-s resol: descrivono la risoluzione della carta raster, cioè rispettivamente la misura del lato est- ovest e del lato nord-sud delle celle della griglia. rows, cols: sono il numero di righe e colonne del file raster (NxM). format: indica quanti byte sono richiesti per rappresentare un dato della carta raster (0 1 byte, 1 2 byte, 2 3 byte,...) compressed: indica se il corrispondente file binario è stato compresso (1) oppure se non lo è (0). E' molto utile utilizzare file compressi nel caso in cui si abbiano carte raster coerenti con pochi valori di categoria 10

CARTE RASTER proj: 0 zone: 0 north: 49 south: 34 east: 21 west: 4 cols: 6122 rows: 7202 e-w resol: 0.00277687 n-s resol: 0.00208275 format: 3 compressed: 0 F 13 - Intestazione di una carta raster Directory cats: in questa directory si può definire per ogni raster presente un file che faccia corrispondere ad ogni valore o gruppo di valori della carta una descrizione. Directory colr: contiene la tavola dei colori da assegnare ai valori di una carta raster. La prima riga indica il massimo e il minimo valore rappresentato, le altre righe descrivono i colori da associare. Il formato con cui si indicano i colori è r:g:b 3. Questo formato indica un colore come combinazione dei colori fondamentali (F 14). Posso definire un colore diverso per ogni valore di una carta raster, oppure definire un intervallo di valori e impostare i colori solo agli estremi dell'intervallo: per tutte le celle con i valori compresi in questo intervallo il colore verrà determinato interpolando i colori assegnati agli estremi. colore 0 255 r = rosso assente massima tonalità g = verde assente massima tonalità b = blu assente massima tonalità F 14 - Il formato r, g, b In F 15 è riportato un esempio di un file per i colori di una carta raster caratterizzata da otto diverse valori. In questo esempio si ha che: le celle con valore uno verranno rappresentate con il colore rosso; per le celle con valore due verrà utilizzato il verde; le celle con valore tre verranno colorate di bianco; le celle con valore quattro saranno colorate di nero; per le celle di valore cinque si utilizzerà il grigio per la rappresentazione; infine le celle con valore sei verranno colorate di azzurro. In questo esempio abbiamo associato un colore ad ogni valore rappresentato sulla carta. 3 r: red, g: green, b: blue 11

CARTE RASTER Analizziamo ora una riga dell'esempio riportato in F 16, che si riferisce ad una carta raster di un modello digitale di terreno: questo è un tipico esempio di assegnazione dei colori per intervalli di valori. La riga sette, "0:0:255:0 150:0:75:0" indica di far corrispondere alle celle con valore zero il colore verde, a quelle con valore 150 un verde più tenue. Per tutte le celle con vaole compreso tra 1 e 149 verrà adottato come colore una tonalità di verde compresa tra 255 e 75. Per quanto riguarda le tonalità di rosso e blu queste resteranno fisse a zero. % 1 6 1:255:0:0 2:0:255:0 3:255:255:255 4:0:0:0 5:192:192:192 6:255:255:0 F 15 - Esempio di file dei colori % -4000 3500-4000:0:0:2-2800:0:0:155-2800:0:0:155-1500:0:0:200-1500:0:0:200-200:0:0:255-200:0:0:255-1:0:255:255-1:0:255:255 0:0:255:0 0:0:255:0 150:0:75:0 150:0:75:0 250:30:75:20 250:30:75:20 400:60:75:20 400:60:75:20 900:90:70:30 900:90:70:30 3500:255:255:255 F 16 - Definizione dei colori per una carta raster rappresentante un modello digitale di terreno Directory colr2: contiene una tavola dei colori alternativa a quella definita nella directory colr. Directory hist: contiene le informazioni storiche relativa alla carta raster, come ad esempio l'autore, la data di creazione, la provenienza dei dati, ecc. Directory cell_misc: informazioni di supporto. Directory fcell: contiene le carte raster con il formato dei dati di tipo virgola mobile. I dati di tipo raster vengono trattati in forma binaria e su questo formato operano i comandi di GRASS; è stato però definito anche un formato ascii verso il quale esportare/importare i dati dal formato binario. Un esempio del formato ascii di GRASS è riportato in F 17. E composto di due parti: una intestazione con i limiti della carta ed il passo adottato; una serie di valori numerici, uno per ogni cella del raster, disposti su un numero di righe e colonne pari a quelle definite nell intestazione. 12

CARTE RASTER north: 46:20N south: 45:34N east: 9:30E west: 8:55E rows: 368 cols: 210 1930 1930 1930 1930 1800 1800 1630 1630 1380 1380 1140 1140 780 780 500 500 320 320 280 280 280 280 340 340 840 840 1160 1160 1350 1350 1700 1700 1820 1820 1830 1830 1800 1800 1740 1740 1700 1700 1830 1830 1880 1880 1750 1750 1900 1900 2080 2080 2540 2540 2500 2500 2380 2380 2200 2200 2060 2060 1980 1980 1840 1840 1740 1740 1430 1430 1140 1140 980 980 1160 1160 1360 1360 1480 1480 1680 1680 1980 1980 2180 2180 2380 2380 2180 2180 2000 2000 1960 1960 1900 1900 1700 1700 1380 1380 1050 1050 500 460 465 485 560 590 800 975 1125 1125 1230 1340 1470 1560 1650 1710 1925 2080 2210 2215 2120 2055 1990 1975 1910 1855 1870 1845 1900 2020 2185 2350 2385 2300 2210 2075 1930 1845 1775 1745 1780 1825 1855 1890 1890 1860 1830 1800 1800 1710 1610 1510 1428 1320 1210 1110 980 810 650 530 480 560 670 810 960 1100 1200 1325 1280 1150 1090 F 17 - Esempio di file raster in formato ascii 2.2 Importare dati raster in GRASS Un metodo semplice per importare carte raster in GRASS consiste nel creare un file ascii rispettando il formato definito e utilizzare il comando r.in.ascii per importare i dati. Questo comando creerà il file binario con i dati (nella directory cell o fcell, in base al tipo di dato importato) e il file di intestazione (nella directory cellhd). r.in.ascii Questo comando permette di convertire un file raster ascii nel corrispondente layer binario. La sintassi è relativamente semplice: nell esempio C 4 il file ascii prova viene convertito nell analogo binario chiamato provadtm. Il comando cerca il file prova nella directory corrente; se nella directory corrente non è presente il file che si vuole importare è necessario specificare anche il path completo, in questo modo si indica la posizione nel file system del file che può così essere letto dal comando r.in.ascii. Quando si lavora in GRASS si possono lanciare anche tutti i comandi UNIX: è così possibile cambiare la directory corrente (C 5). GRASS > r.in.ascii input = /home/username/prova output = provadtm C 4 - r.in.ascii da linea di comando GRASS > pwd /usr/local GRASS > cd /home/username/ GRASS > pwd /home/username GRASS > r.in.ascii input = prova output = provadtm C 5 - Nuova directory corrente e lancio di r.in.ascii 13

CARTE RASTER Esercizio 4 Importazione di una carta raster dal formato GRASS-ASCII - (1) L obiettivo di questo esercizio è l introduzione nel mapset dati creato durante i precedenti esercizi di una carta raster. Copiare il file comoascii nella propria home. A questo punto utilizzare il comando r.in.ascii per ottenere il corrispondente file binario, che dovrà chiamarsi semplicemente como. Se tutto è stato svolto in modo corretto, all interno del mapset dati, il comando di importazione dati utilizzato dovrebbe aver creato le directory cats, cell, cell_misc, cellhd, hist; ognuna di queste directory contiene un file como che descrive un aspetto della carta raster (ved. par. 2.1). Esercizio 5 Importazione di una carta raster dal formato GRASS-ASCII - (2). Con questo esercizio si vuole completare la composizione dell archivio del mapset dati. Si vuole quindi importare in questo mapset la carta italia.ascii, che chiameremo italiadtm. La procedura da seguire è la stessa già vista nell'esercizio 4) Al termine di queste operazioni all interno del mapset dati saranno state create dal comando di importazione di GRASS una serie di directory (vedere F 18): all interno di ognuna di queste ci saranno due file, como e italiadtm, che definiscono le caratteristiche delle due carte raster importate con L'Esercizio 4 e l'esercizio 5. F 18 - il mapset dati 2.3 Visualizzare i dati raster A questo punto il nostro archivio contiene delle carte che vogliamo ora visualizzare. d.mon Per visualizzare le carte contenute nell archivio GRASS utilizza una finestra chiamata monitor, attivabile mediante il comando d.mon. Ad esempio, digitando i comandi riportati in C 6 è possibile aprire contemporaneamente più monitor (in questo caso il monitor chiamato x1 e quello chiamato x2) e visualizzare su ognuno carte o particolari di una stessa carte diversi. 14

CARTE RASTER La possibilità di aprire più monitor comporta conseguentemente la necessità di dover indicare qual è, tra quelli aperti, il monitor corrente, cioè qual è il monitor sul quale, ad esempio, verrà visualizzata la prossima carta. Oltre al parametro start visto in C 6 ne esistono altri, che specificati di seguito al comando d.mon, permettono di gestire i monitor di GRASS: d.mon start=x1 apre il monitor x1. d.mon stop=x1 chiude il monitor x1. d.mon select=x1 seleziona il monitor x1 (attenzione: deve essere però già stato aperto in precedenza). d.mon -L elenca lo stato dei monitor Ogni volta che un nuovo monitor viene aperto questo diviene il monitor corrente. GRASS > d.mon start=x1 GRASS > d.mon start=x2 C 6 - Apro due monitor Utilizzando invece l'interfaccia grafica il comando può essere richiamato dal menù display monitors start xn Per visualizzare i dati contenuti all interno dell archivio di GRASS sui monitor ora aperti devo utilizzare comandi differenti a seconda della tipologia dei dati; per le mappe raster il comando è d.rast. d.rast Questo comando può essere utilizzato da linea di comando o con l'interfaccia grafica (raster display display rasters maps) semplicemente specificando il nome della carta raster che si vuole visualizzare. Nell esempio C 7 visualizzo sul monitor corrente una carta chiamata dtm. Utilizzando il parametro -o si può fare l overlay tra il raster visualizzato sul monitor e quello che si sta richiamando con il comando d.rast; con questa opzione tutte le celle con valore nullo appariranno trasparenti, in questo modo si potranno vedere sovrapposti più raster. GRASS > d.rast map=dtm C 7 - Visualizzazione di una carta chiamata dtm d.erase Il comando d.erase cancella il contenuto del monitor corrente permettendo la visualizzazione di una nuova carta (display ERASE display frame). Il monitor per default viene impostato con lo sfondo nero: se si vuole utilizzare uno sfondo differente è sufficiente indicare, utilizzando l'attributo color di seguito al nome del comando, un colore differente (nell'esempio C 8 si pulisce il monitor x1 e si imposta un nuovo colore dello sfondo, in questo caso grigio). GRASS > d.erase color = grey C 8 - Modifica del colore dello sfondo del monitor x1 15

CARTE RASTER Esercizio 6 Visualizzare una carta raster (1) Aprire il monitor x0 e visualizzare la carta raster italiadtm, contenuta nel mapset dati, location corso. Il risultato dell'operazione è riportato in F 19. F 19 - La carta raster italiadtm Esercizio 7 Visualizzare una carta raster (2) Aprire il monitor x1 e visualizzare la carta raster como, contenuta nel mapset dati, location corso. La regione di visualizzazione non è stata cambiata ed è riferita a tutta Italia: la rappresentazione della carta di como occupa quindi un piccolo spazio del monitor. La restante superficie risulta colorata di bianco in quanto non ci sono dati (no data). Esercizio 8 Overlay tra carte raster Visualizzare le due carte (italiadtm e como) facendo l overlay tra le carte (opzione -o) come indicato dalla sequenza di comandi riportati in C 9. Selezionare come monitor corrente il monitor x0. Il risultato che si ottiene è quello di figura F 20 nella quale è riportata cerchiata la carta como che risulta sovrapposta alla carta italiadtm. GRASS > d.rast map=italiadtm GRASS > d.rast -o map=como C 9 - overlay tra carte 16

CARTE RASTER F 20 - risultato di un overlay tra carte I colori attribuiti da GRASS alla carta sono generici e chiaramente non entrano nel merito del particolare significato delle carte. E' chiaramente possibile definire dei colori personalizzati al posto di quelli di default (par. 2.1). r.colors Il comando r.colors (raster develop map create color table) guida l utente alla definizione di nuovi colori per una carta raster. Questo comando crea il corrispondente file nella directory colr del mapset in cui si trova la carta a cui si vogliono associare dei colori diversi da quelli di default. Ovviamente l utente potrà provvedere anche manualmente a questa operazione creando un file di testo con lo stesso nome della carta nella directory colr, seguendo le informazioni sul formato riportate nel paragrafo 2.1. Questo comando permette di scegliere una gamma di colori predefinita (nell esempio in C 10 i colori della carta vengono impostati su di una scala di grigi), oppure di impostarne una personalizzata: in questo caso si può operare in diversi modi. Nell'esempio C 11 si considera il file dei colori definito per una carta raster chiamata italia e lo si assegna anche alla carta raster lomb; nell esempio C 12 invece si divide l insieme dei dati in intervalli ed i colori verranno interpolati per attribuire il colore alle classi interne agli intervalli. GRASS > r.colors map = como color = grey C 10 - Scala di grigi GRASS > r.colors map = lomb rast = italia C 11 - Assegnazione dei colori definiti per una carta raster ad un'altra 17

CARTE RASTER C 12 - impostazione personalizzata dei colori Esercizio 9 Definire i colori di una carta raster Aprire il monitor x3 e visualizzare la carta italiadtm. Modificare i colori con il comando r.color, seguendo le indicazioni riportate in F 21. Visualizzare nuovamente la carta italiadtm, questa volta sul monitor x5. Sui due monitor aperti la carta visualizzata è la stessa: quello che cambia sono i colori associati in corrispondenza delle diverse quote. Esercizio 10 Copiare i colori da una carta raster Impostare i nuovi colori anche per la carta como utilizzando il comando r.colors per copiare quelli definiti in precedenza per la carta italiadtm. Quote Definizione Colori intervalli R G B -4046 0 0 2-2800 0 0 155-1500 0 0 200-200 0 0 255-1 0 255 255 0 0 255 0 150 0 75 0 250 30 75 20 400 60 75 20 900 90 70 30 3000 255 255 255 F 21 - I colori per la carta italiadtm 18

CARTE RASTER Dopo aver svolto questi esercizi nel mapset user è stata creata dal comando r.colors una nuova directory, chiamata colr, all interno della quale sono presenti due file di testo, como e italiadtm. Questi sono i file che definiscono i colori associati alle categorie delle rispettive carte raster: mediante il comando vi è possibile vederne il contenuto (F 22). F 22 - Contenuto del file italiadtm contenuto nella directoty colr d.zoom Questo comando permette di definire una sottoregione della regione corrente e di visualizzare sul monitor solo la zona selezionata di una carta. Una volta lanciato il comando (display ZOOM/UNZOOM in the monitor) è sufficiente selezionare sul monitor l'area sulla quale eseguire l'ingrandimento. Le diverse operazioni sono richiamabili utilizzando i tasti del mouse (sinistri, destro e centrale), facendo riferimento a quanto indicato sul terminale di GRASS per le operazioni possibili (F 23). F 23 - il comando d.zoom 19

CARTE RASTER Esercizio 11 Zoom su un area Visualizzare su di un monitor la carta italiadtm e in overlay la carta como (Esercizio 8). Eseguire quindi uno zoom sulla zona di Como. Se tutte le operazioni sono state effettuate correttamente il risultato è quello mostrato in F 24) F 24 - Il risultato del comando d.zoom 20

3 Carte Vettoriali 3.1 Formato delle carte vettoriali Similmente a quanto visto per le carte raster, all interno del mapset sono previste delle directory per contenere i diversi elementi costituenti una carta vettoriale. Directory dig: contiene le carte vettoriali in formato binario. Directory dig_ascii: contiene le carte vettoriali in formato ascii. Un file ascii di una carta vettoriale è composto da una intestazione e dall'elenco dei punti che definiscono i diversi oggetti presenti sulla carta. Nell'intestazione sono contenute le informazioni storiche del file, la descrizione della carta e la sua posizione; in tutto si tratta di quattordici etichette (figura F 25). Per quanto riguarda gli oggetti è possibile definirne tre tipi diversi: aree, linee, punti. All interno del file ascii la carta vettoriale è descritta da una prima riga che indica il tipo di oggetto (A = area, L = linea, P = elenco di punti sparsi) e dal numero di nodi necessari per descriverla; di seguito a questa etichetta è posto l elenco dei punti (esempio in F 26). Directory dig_att: file con gli attributi delle categorie del vettore. Directory dig_cats: etichette delle categorie. In questa directory ad ogni carta vettoriale si può far corrispondere un file ascii nel quale viene data una descrizione delle categorie che sono state definite. Directory dig_plus: vengono creati dei file che contengono le informazioni necessarie a velocizzare le operazioni di interrogazioni sui vettoriali. Directory reg: registrazione digitalizzata dei punti. Questa directory è creata dal comando v.digit che è l'unico comando che utilizza i dati contenuti nei file memorizzati qui. ORGANIZZATION: testo (max 29 caratteri) ente che ha digitalizzato il file DIGIT DATE: testo (max 19 caratteri) data digitalizzazione DIGIT NAME testo (max 19 caratteri) responsabile digitalizzazione MAP NAME: testo (max 40 caratteri) nome originale carta sorgente MAP DATE: testo (max 10 caratteri) data creazione carta originale OTHER INFO: testo (max 72 caratteri) altri commenti sulla carta MAP SCALE: intero scala della carta originale ZONE: intero zona della carta WEST EDGE: reale estremo ovest della carta EAST EDGE: reale estremo est della carta SOUTH EDGE reale estremo sud della carta NORTH EDGE: reale estremo nord della carta MAP THRESH: reale risoluzione di digitalizzazione VERTI: nessun dato individua la fine dell'intestazione F 25 - Intestazione di un vettoriale in formato ascii 21

CARTE VETTORIALI ORGANIZATION: DIGIT DATE: 09/29/98 DIGIT NAME: grass MAP DATE: 1998 OTHER INFO: XXX MAP SCALE: 1 ZONE: 16 WEST EDGE: 0 EAST EDGE: 35 SOUTH EDGE: 30 NORTH EDGE: 50 MAP THRESH: 0.00 VERTI: L 24 43.37863 5.12797 43.37863 5.11651 43.39009 5.06495 43.39009 4.96181 43.33853 4.93317 43.33280 4.77847 43.37291 4.62377 F 26 - Esempio di vettoriale ASCII 3.2 Importare Carte Vettoriali Come per le carte raster anche nel caso di carte vettoriali esiste un comando di GRASS che permette di convertire una carta in formato ascii nel rispettivo formato binario: nel caso di carte vettoriali è stata definita un apposita directory (dig_ascii) come archivio per le carte in formato ascii. v.in.ascii Il comando che permette di passare dal formato ascii delle carte vettoriali a quello binario è v.in.ascii (import vector map ascii grass vector file). Questo comando legge la carta ascii nella directory dig_ascii e scrive quella binaria nella directory dig. Nell esempio C 13 viene convertito il file chiamato strade (input), che deve essere posto nella directory dig_ascii in un file binario che viene posto nella directory dig e chiamato stradevect (output). GRASS > v.in.ascii input = strade output = stradevect C 13 - Importare carte vettoriali nell archivio Esercizio 12 Importare una carta vettoriale Importare la carta vettoriale chiamata coste nel mapset dati (location corso). Non avendo mai utilizzato carte vettoriali nel nostro archivio è necessario creare la directory per il file ascii (mkdir dig_ascii) all interno del mapset e copiarvi il file coste. Quindi si può passare a 22

CARTE VETTORIALI eseguire il comando v.in.ascii; chiamare il file di uscita sempre coste. Se l'operazione si è svolta correttamente il comando v.in.ascii ha creato la directory dig all interno del mapset e all interno di questa un file chiamato coste. Nota: oltre al comando citato esistono anche dei comandi per importare dati vettoriali da altri formati (ad esempio il formato DXF di AutoCAD o il formato di Arc/Info ). 3.3 Visualizzare le carte vettoriali L'operazione di visualizzazione viene compiuta dal comando d.vect, che è l'equivalente del d.rast per le carte vettoriali. d.vect Il parametro map del comando indica il nome della carta che si vuole visualizzare; è possibile inoltre scegliere un colore di visualizzazione per gli oggetti della carta vettoriale (parametro color). Nell esempio C 14 si visualizza la carta vettoriale strade utilizzando il colore rosso per tracciare gli oggetti della carta. In F 27 è riportato l elenco dei parametri del comando e l elenco dei colori con cui si può visualizzare la carta. (Se si utilizza l'interfaccia grafica: vector display display vector maps) GRASS > d.vect map = strade color = red C 14 - Visualizzazione di una carta vettoriale F 27 - I parametri del comando d.vect Attenzione: per poter visualizzare una qualsiasi carta è necessario che almeno un monitor sia aperto e selezionato (par. 2.3)! 23

CARTE VETTORIALI Esercizio 13 Visualizzare la carta dell Italia con le coste Aprire un monitor e visualizzare su questo la carta chiamata coste importata nell archivio nell Esercizio 12; gli elementi della carta vettoriale devono essere visualizzati in verde. NOTA: Assicurarsi che la regione corrente di visualizzazione riguardi tutta l'italia e non sia rimasta impostata sulla zona di Como. Nel caso utilizzare il comando d.zoom (2.3) per modificarla. Ogni volta che si esegue una visualizzazione il monitor di GRASS non viene ripulito, ma la nuova carte viene sovrapposta alle precedenti (Esercizio 8). Si è infatti visto che per inizializzare un monitor si deve utilizzare il comando d.erase (par. 2.3). Se si visualizza quindi, nell'ordine, una carta raster e poi una vettoriale si ottiene una sovrapposizione tra gli elementi della carta vettoriale e quelli della carta raster. Esercizio 14 Visualizzare congiuntamente carte raster e vettoriali Visualizzare la carta raster italiadtm e la carta delle coste sul medesimo monitor; utilizzare come colore per gli elementi vettoriali il rosso. L effetto che si ottiene, è quello riportato in F 28. La non perfetta corrispondenza tra le coste della carta vettoriale e quelle della carta raster è dovuta al bassa risoluzione con cui è stata definita la carta raster. F 28 - Carta raster e vettoriale sul medesimo monitor 24

4 Punti Sparsi Come si è visto nel par. 3.1 un elenco di punti sparsi può essere definito all interno di una carta vettoriale. E' però possibile definire i dati di tipo puntuale in un formato a se stante. In questo modo risulta possibile sfruttare una serie di caratteristiche (come la possibilità di associare più di un attributi ad ogni punto) e una serie di comandi appositamente realizzati, che aumentano le possibili operazioni effettuabili su questi dati, rispetto al loro trattamento come generici dati di tipo vettoriale. I file con i punti sparsi (site point) vengono posti nella directory sites_list. 4.1 Formato Punti Sparsi All interno del file sono definiti vari campi : campo name: nome da assegnare al gruppo di punti; campo desc: si può inserire una descrizione in modo da specificare meglio il significato di quanto definito nel file; segue poi l elenco dei punti (In F 29 è indicato il formato da seguire per indicare i diversi campi associabili ai punti). Per ogni punto dell'elenco dovranno essere necessariamente specificati due campi di tipo floating point che rappresentano le coordinate (nell'ordine est, nord), più opzionalmente: altre coordinate, per i casi multidimensionali (sempre di tipo floating point); una categoria di appartenenza (numero intero) uno o più attributi di tipo testo; uno o più attributi di tipo float. In figura F 30 è riportato un esempio di un file di questo tipo; in questo caso ho tre attributi: le due coordinate più un altro campo che rappresenta l'anomalia di gravità. est nord [z [d4 ]...] [#categoria] [ [@attr_testuale [@...] ] [%attr_float [%...] ] F 29 - Formato dei campi di definizione di un site point name italgrav desc quota punto 16.098722 38.667778 %154.190000 16.019278 38.668056 %151.050000 16.106778 38.668333 %149.790000 16.405389 38.668611 %117.910000 16.039556 38.669722 %155.360000 F 30 - Esempio di file di punti sparsi 4.2 Importare un elenco di punti sparsi Per questa operazione non è necessario utilizzare alcun comando di GRASS: è sufficiente creare un file ascii all'interno della directory site_lists con l'elenco dei punti e i rispettivi attributi seguendo il formato riportato in F 29 e F 30. 25

CARTE VETTORIALI Ovviamente se all interno del mapset non sono mai stati trattati i punti sparsi è necessario creare la directory site_lists. 4.3 Visualizzare i Punti Sparsi Per visualizzare i punti devo disporre di un monitor aperto e utilizzare il comando d.sites. d.sites I parametri di questo comando sono riportati in F 31: oltre chiaramente al nome del file che si vuole visualizzare si può specificare anche il colore da utilizzare par visualizzare i punti (color), la dimensione del segnapunto (size) e il tipo di segnapunto da utilizzare (type). Se si utilizza l'interfaccia grafica il comando può essere richiamato da site display display site markers. Nell esempio C 15 vengono visualizzati i punti contenuti in una ipotetica site list chiamata osservazioni: questi punti verranno rappresentati sul monitor utilizzando un quadratino, delle dimensioni di 10 pixel e di colore verde. F 31 - I parametri del comando d.sites GRASS > d.sites sitefile = osservazioni color = green size = 10 type = box C 15 - Visualizzazione di una lista di punti Esercizio 15 Visualizzare i punti nei diversi formati a disposizione Importare all interno del mapset dati (location corso) il file citta che rappresenta un elenco di punti sparsi. Visualizzare questi punti utilizzando dei segnapunto di tipo box, di dimensioni 15 pixel e di colore giallo. Ripetere la medesima operazione indicando però come tipo di segnapunto la x, indicare come dimensione sempre 15 e come colore il verde. Come di consueto il 26

CARTE VETTORIALI monitor sovrappone un comando di visualizzazione al precedente: questo vale anche per i site point. In questo modo è possibile ottenere dei segnapunto composti. d.site.labels Se si vogliono visualizzare le etichette associate ai punti piuttosto che i segnapunto è necessario utilizzare il comando d.site.labels (site display display site labels). Questo comando, pur prevedendo una serie di opzioni che permettono di definire le modalità di visualizzazione del testo, ha un funzionamento molto simile al più semplice d.sites. Esercizio 16 Visualizzare carte raster, vettoriali e punti sparsi Visualizzare su un monitor la carta raster italiadtm, la carta vettoriale coste e l elenco di punti sparsi citta, sia i segnapunto che le etichette associate ad ogni punto. Anche in questo caso sfruttiamo il fatto che ogni volta che si impartisce un comando di visualizzazione non viene ripulito il monitor, ma si ha semplicemente una sovrapposizione delle carte visualizzate. Per ottenere l'effetto finale riportato in F 32 è necessario lanciare i comandi di visualizzazione nella sequenza corretta (d.rast, d.vect, d.sites, d.site.label). Se ad esempio si visualizza la carta vettoriale coste prima della carta raster italiadtm, quest ultima si sovrappone al vettoriale coprendolo completamente. F 32 - Esempio di visualizzazione complessiva di più carte 27

5 Regione di visualizzazione e interrogazione delle carte 5.1 Impostazione della regione di visualizzazione Un qualsiasi comando di visualizzazione, ma vedremo inseguito come questo valga anche per i comandi di elaborazione delle carte, è riferito alla parte di carta compresa nei limiti geografici della regione impostata come corrente e mai alla carta raster nella sua estensione completa. Quando è stato utilizzato il comando d.zoom (Esercizio 11) l'operazione che è stata compiuta dal sistema è stata una ridefinizione della regione corrente sugli estremi geografici indicati sul monitor. La gestione della regione corrente può essere fatta in modo più esplicito, utilizzando il comando g.region. g.region Questo comando può essere utilizzato in modo diretto, richiamando unicamente i parametri della regione che si voglio modificare, in modo interattivo, lanciando il comando senza parametri e quindi utilizzando la schermata in F 33, oppure utilizzando l'interfaccia grafica (region manage region). Ad esempio, se si vuole modificare la risoluzione delle celle nella regione corrente per portarla a 0 0'5'' (lasciando inalterati tutti gli altri parametri) si potrà operare in tre modi differenti: in C 16 vengono specificati direttamente dopo il comando i parametri che si vuole modificare; in F 33 si lancia il comando e poi si modificano i dati; in F 34 si utilizza l'interfaccia grafica. GRASS > g.region ewres=0:00:05 nsres=0:00:05 C 16 - g.region da linea di comando F 33 - g.region interattivo 28

REGIONE DI VISUALIZZAZIONE E INTERROGAZIONE DELLE CARTE F 34 - g.region da interfaccia grafica Oltre alla modifica diretta dei limiti della regione e della risoluzione è possibile anche fare riferimento ad elementi presenti nell'archivio per impostare le nuove caratteristiche della regione, in particolare è possibile: salvare le impostazioni della regione corrente in archivio delle regioni (directory windows); indicare come regione corrente la regione di default del mapset; impostare come regione corrente una regione precedentemente salvata in archivio; imposta la regione in base alle dimensioni di una carta raster indicata; imposta la regione in base alle dimensioni di una carta vettoriale indicata; Esercizio 18 Impostare come regione corrente gli estremi di una carta raster Modificare la regione corrente del mapset dati (contenuto nella location corso): la nuova regione deve 29

REGIONE DI VISUALIZZAZIONE E INTERROGAZIONE DELLE CARTE avere come limiti geografici e risoluzione quelli della carta raster como. Dopo aver impostato la nuova regione uscire dal comando di impostazione e visualizzare su un monitor aperto la carta raster como. Ripetere il comando di visualizzazione per la carta italiadtm senza modificare la regione. Quello che si vede è un particolare della carta italiadtm in corrispondenza della regione attualmente impostata. Per poter visualizzare nuovamente tutta l Italia è necessario modificare i limiti della regione del mapset in modo da comprendere l'intera Italia: è sufficiente ripetere quanto fatto nella prima parte dell'esercizio, impostando la regione del mapset sulla dimensioni della carta raster italiadtm. Esercizio 19 Impostare come regione corrente gli estremi di una carta vettoriale Questo esercizio è equivalente a quello precedente, in questo caso però come riferimento per la regione di visualizzazione si vuole utilizzare una carta vettoriale. Ripetere dunque le operazioni compiute nell'esercizio 18 utilizzando la carta coste come riferimento. Una volta impostata la nuova regione visualizzare la carta raster italiadtm e la carta vettoriale coste. Se le operazioni sono state effettuate in modo corretto sul monitor di visualizzazione dovranno comparire le coste di buona parte del mediterraneo come mostrato in F 35. (ATTENZIONE: per default gli elementi di una carta vettoriale vengono visualizzati utilizzando il colore bianco, per ottenere l'effetto mostrato in figura impostare il nero come colore di visualizzazione) F 35 - Il risultato dell'esercizio 19 30

REGIONE DI VISUALIZZAZIONE E INTERROGAZIONE DELLE CARTE Esercizio 20 Salvare la regione nel database E comodo poter salvare in un archivio i parametri delle regioni di uso più frequente, evitando così di doverli impostare ogniqualvolta ne sorga la necessità. Per fare questo è necessario salvare la regione assegnandole un determinato nome, che potrà essere utilizzato per richiamarla e ricaricare i parametri salvati. Inserire nell archivio di GRASS le regioni elencate in F 36. Per ogni riga della tabella F 36 si dovrà definire una nuova regione corrente come riportato in C 17 e salvare la regione impostata con il relativo nome (C 18). Per richiamare una delle regioni salvate si opererà come in C 19. nome regione Nord Sud Ovest Est sardegna 41:25N 38:25N 7:50E 10:05E nord_italia 47:35N 43:30N 4:45E 14:15E calabria 40:20N 37:45N 15:25E 17:10E golfo_genova 44:40N 43:10N 7:45E 10:05E F 36 - Elenco e limiti delle regioni da inserire nel database di GRASS GRASS > g.region n=41:25n s=38:25n e=7:50e w=10:05e C 17 - impostare una nuova regione da linea di comando GRASS > g.region save=sardegna C 18 - salvare la regione corrente nell'archivio GRASS > g.region region=sardegna C 19 - caricare i dati di una regione salvata nell'archivio Controllare ora il contenuto del mapset dati: è stata creata una nuova directory chiamata windows (F 37): questa contiene i dati delle regioni che sono state salvate nell'esercizio 20. F 37 - La directory windows all'interno del mapset dati 31

REGIONE DI VISUALIZZAZIONE E INTERROGAZIONE DELLE CARTE 5.2 Interrogazione delle carte dal monitor E possibile interrogare carte vettoriali, raster e punti sparsi direttamente dal monitor: cliccando in un determinato punto si possono ottenere una serie di informazioni ad esso associate, come ad esempio la categoria di appartenenza (per i raster), o l'etichetta associata ad una determinata linea o area (per i vettoriali), o gli attributi di un punto. Ogni tipologia di dati (raster, vettoriali, punti sparsi) ha un comando dedicato per questa funzione, ma tutti funzionano in modo simile: si tratta sempre di comandi interattivi, una volta lanciati cliccando con il tasto sinistro del mouse in corrispondenza di un punto sul monitor si ottengono tutte le informazioni ad esso associate; per interrompere l esecuzione del comando è sufficiente cliccare (restando posizionati con il puntatore del mouse sul monitor) con il tasto destro. d.what.rast Con il comando d.what.rast (raster analyse map query with mouse) è possibile interrogare più carte raster contemporaneamente, ottenendo come risposta il valore associato a al punto selezionato per tutte le carte indicate. Posso quindi visualizzare i risultati delle interrogazioni a video oppure indicare un file sul quale verranno scritti. Se non specifico alcuna carta, le interrogazioni verranno fatte unicamente sulla carta correntemente visualizzata sul monitor attivo. Specificando il parametro -1 eseguo un interrogazione su di un unico punto della carta. Nell esempio C 20 interrogo due layer (italiadtm, italiaslope), e reindirizzo l uscita in un file chiamato dati. GRASS > d.what.rast map = italiadtm, italiaslope > dati C 20 - esempio di interrogazione contemporanea di due layer raster Esercizio 21 Interrogazione di una carta raster utilizzando il comando d.what.rast La carta sulla quale si vogliono effettuare le interrogazioni in questo esercizio è l'ormai consueta italiadtm presente nel mapset dati (location corso). Visualizzare questa carta su un monitor aperto e lanciare il comando d.what.rast; successivamente cliccare in vari punti sul monitor. Nella shell di GRASS compariranno, ad ogni click effettuato, le coordinate del punto ed il valore corrispondente, in questo caso la quota. Ripetere l'esercizio reindirizzando l'output di d.what.rast su un file e verificarne il contenuto. Esercizio 22 Interrogazione di due carte raster utilizzando il comando d.what.rast In questo esercizio si utilizzeranno le carte italiadtm e como. Impostare la regione di visualizzazione sugli estremi della carta como e visualizzarla sul monitor. Questa volta lanciare il comando d.what.rast in modo che l'interrogazione avvenga su entrambe le carte raster. Cliccando sul monitor si otterranno, oltre alle coordinate del punto indicato, anche i valori del punto nella carta como e nella carta italiadtm (F 38). 32

REGIONE DI VISUALIZZAZIONE E INTERROGAZIONE DELLE CARTE Ripetere l'esercizio reindirizzando l'output di d.what.rast su un file e verificarne il contenuto. F 38 - Risultato delle query effettuate nell'esercizio 22 d.what.vect Questo comando è l'equivalente per le carte vettoriali di quello già visto per le carte raster. Si opera nel medesimo modo, su una o più carte vettoriali per volta ottenendo come risultato le informazioni topologiche associate agli elementi presenti sulla carta vettoriale: a seconda del tipo di oggetto potremmo vedere le coordinate del nodo iniziale e di quello finale, la superficie, il perimetro, il valore dell'etichetta associata all'oggetto. Specificando il parametro -1 eseguo un interrogazione su un unico punto della carta. Anche in questo caso posso reindirizzare l uscita dal video ad un file (similmente a come illustrato in C 20). Il comando d.what.vect funziona solo se è stata creata una topologia relativa agli oggetti della carta: per costruirla è quindi necessario lanciare prima il comando v.suppport come indicato in C 21. GRASS > v.support map=coste option=build C 21 - Costruzione della topologia Esercizio 23 Interrogazione di una carta vettoriale utilizzando il comando d.what.vect La carta che si vuole interrogare è la carta vettoriale coste. Impostare la regione di visualizzazione sulle dimensioni della carta vettoriale coste e visualizzare sul monitor di GRASS la carta. Prima di utilizzare d.what.vect è necessario costruire la topologia della carta mediante il comando v.support (C 21). A questo punto si può lanciare il comando d.what.vect: cliccando 33

REGIONE DI VISUALIZZAZIONE E INTERROGAZIONE DELLE CARTE in corrispondenza degli oggetti visualizzati si otterrà come risposta le coordinate del nodo di inizio e del nodo di fine delle linea selezionata(f 39). Ripetere l'esercizio reindirizzando l'output di d.what.vect su di un file e verificarne il contenuto. F 39 - Risultato delle query effettuate nell'esercizio 23 d.what.sites Il funzionamento è simile a quello visto per i due precedenti comandi: in questo caso l'oggetto dell'interrogazione è uno o più elenchi si punti sparsi. Cliccando sulla carta in corrispondenza di uno dei punti visualizzati si ha come risposta le coordinate dei punti e gli attributi ad essi eventualmente associati; è possibile anche per il d.what.sites reindirizzare l'output su file operando in modo simile a quanto visto per i comandi precedenti (C 20). Esercizio 24 Interrogazione di una site list utilizzando il comando d.what.sites Interrogare la site list citta. Il risulato che si ottiene è riportato in F 40. Ripetere quindi le operazioni di interrogazione reindirizzando il risultato delle query su un file. 34

REGIONE DI VISUALIZZAZIONE E INTERROGAZIONE DELLE CARTE F 40 - Risultato delle query effettuate nell'esercizio 24 35

6 Gestione e accesso ai dati dell'archivio 6.1 Modalità di accesso ai dati Come si è visto GRASS può fare riferimento ad un archivio che può essere abbastanza complesso, specie se più utenti fanno riferimento alla medesima location, ognuno con il proprio mapset. I comandi illustrati di seguito permettono all'utente di stabilire la propria posizione all interno dell archivio (g.gisenv), di definire una politica per gli accessi degli altri utenti al proprio mapset (g.access) e di accedere ai dati contenuti in un mapset diverso da quello corrente (g.mapset) g.gisenv Questo comando mostra i valori delle variabili d ambiente di GRASS, permettendo di verificare in quale archivio, location e mapset si sta operando. Il comando è richiamato direttamente, senza bisogno di specificare alcun attributo (esempio in C 22). g.access Permette di controllare e modificare i permessi di accesso degli altri utenti al mapset corrente. Può essere richiamato sia da linea di comando che utilizzando l'interfaccia grafica (map mapset acces). Si è detto (par. 1.1) che normalmente tutti gli utenti possono accedere in lettura ai dati contenuti in tutti i mapset della location corrente, indipendentemente dall esserne i proprietari o meno. Questo comando permette di impedire agli altri utenti l'accesso ai propri dati. Le restrizioni possono essere impostate su due livelli differenti (esempio F 41): si può consentire l accesso solo al proprietario (nessuno dei due campi è selezionato), al proprietario ed a tutti gli utenti che appartengono al suo stesso gruppo di lavoro (selezionato solo il campo GROUP), oppure consentire l accesso indifferentemente a tutti gli utenti (opzione di default, impostata al momento della creazione di ogni nuovo mapset, che corrisponde alla condizione riportata in F 41). In nessun caso sarà possibile concedere ad altri utenti permessi di scrittura sul proprio mapset. GRASS > g.gisenv GISDBASE = /home/username/grassdb MAPSET = dati LOCATION_NAME = corso GRASS > C 22 - Esempio di utilizzo del comando g.gisenv 36

GESTIONE E ACCESSO AI DATI DELL'ARCHIVIO F 41 - Finestra interattiva richiamata dal comando g.access Esercizio 17 Impostazione dei permessi di accesso ad un mapset L obiettivo di questo esercizio è la modifica dei permessi di accesso ai due mapset creati all interno della location corso. Modificare i permessi di accesso nel seguente modo: al mapset dati deve poter accedere unicamente il proprietario; al mapset dati2 devono poter accedere tutti gli utenti che appartengono allo stesso gruppo di lavoro del proprietario, mentre tutti gli altri ne devono essere esclusi. Attenzione: si possono modificare unicamente le proprietà del mapset corrente, l esercizio prevede di lavorare su due mapset, quindi, una volta completate le operazioni su uno dei due è necessario uscire da GRASS e rientrare indicando nella finestra di apertura (F 2) il nome del mapset sul quale si vuole lavorare. Utilizzando il comando UNIX ls -l è possibile controllare l'esito delle operazioni. In figura F 42 è riportata la situazione dei permessi prima di aver utilizzato il comando g.access, e dopo che l operazione è stata effettuata per entrambi i mapset. Si vedono chiaramente le modifiche dei permessi di accesso alle directory. Se tutto è stato svolto in modo corretto il risultato finale deve essere quello in F 42. Notare che la directory PERMANENT non ha subito modifiche, è sempre accessibile a chiunque come da impostazioni di default. 37

GESTIONE E ACCESSO AI DATI DELL'ARCHIVIO F 42 - I permessi prima e dopo l uso di g.access Finora si è sempre fatto riferimento a dati contenuti nel mapset corrente. E' possibile però accedere in lettura, indicando unicamente il nome della carta che interessa, anche a tutti i dati contenuti all'interno del mapset speciale PERMANENT (par. 1.1). Se si vuole accedere ai dati ad un mapset diverso dal proprio e da PERMANENT è necessario specificare oltre al nome della carta anche il mapset di appartenenza. Naturalmente l'accesso è condizionato dai permessi stabiliti dal proprietario del mapset. Nell'esempio riportato in C 23 si visualizza su un monitor la carta chiamata italia e contenuta all'interno del mapset dati2. GRASS > d.rast italia@dati2 C 23 - Esempio di accesso a dati contenuti in un mapset diverso da quello corrente g.mapsets Permette all utente di fare riferimento in modo permanente ad un altro mapset all interno della location corrente (map mapset search path). Normalmente, oltre al proprio mapset, si è visto che è possibile fare riferimento anche ai dati del mapset PERMANENT in modo diretto. Questo comando permette definire un elenco di altri mapset verso i quali deve essere possibile l'accesso diretto in lettura ai dati contenuti indicando semplicemente il nome della carta. Se all'interno di mapset diversi esistono carte con lo stesso nome, per evitare problemi, sarà necessario indicare comunque il mapset di appartenenza. Nell'esempio in F 43 è mostrato l'uso interattivo del comando aggiungendo il mapset dati2 alla lista di ricerca. dopo aver eseguito il comando sarà possibile visualizzare la carta italia dell'esempio C 23 semplicemente mediante il comando riportato in C 24. 38

GESTIONE E ACCESSO AI DATI DELL'ARCHIVIO F 43 - Aggiunta del mapset dati2 all'elenco di ricerca GRASS > d.rast italia C 24 - Esempio di accesso a dati contenuti in un mapset diverso da quello corrente, ma compreso nella lista di ricerca 6.2 Copiare, rinominare, cancellare una carta GRASS mette a disposizione una serie di comandi per copiare, rinominare e cancellare carte. Questo facilita di molto le operazioni, essendo i dati relativi ad una carta distribuiti in più directory; queste operazioni risulterebbero, se compiute con gli usuali comandi UNIX, lunghe e fonte di errori nel caso ci si dimentichi di copiare uno dei componenti di una carta. g.remove Permette di rimuovere tutti i file relativi alla carta specificata del mapset corrente. E' possibile eliminare contemporaneamente più elementi presenti nel mapset corrente specificandone il nome dopo il parametro che ne identifica la tipologia (raster, vettoriali,...). Nell'esempio C 25 vengono cancellate due carte raster (lombardia e lomb_pendenze) ed una vettoriale (strade). L'utilizzo dell'interfaccia grafica (map remove) è simile al comando in linea: è sufficiente indicare nei campi rispettivi l'elenco delle carte da eliminare. GRASS > g.remove rast=lombardia,lomb_pendenze vect=strade C 25 - Esempio di utilizzo del comando g.remove g.rename Permette di cambiare il nome di un elemento contenuto nel mapset corrente. E' possibile rinominare contemporaneamente più carte o elementi contenuti nel mapset a condizione che siano di tipo diverso. Non si possono rinominare, ad esempio, due carte raster lanciando un'unica volta il comando. Nell'esempio riportato in C 26 viene cambiato il nome alla carta raster italiadtm che diventa italia e alla carta vettoriale coste che diventa coste_italia. 39

GESTIONE E ACCESSO AI DATI DELL'ARCHIVIO L'utilizzo dell'interfaccia grafica (map rename) è simile al comando in linea: è sufficiente indicare nei campi rispettivi l'elenco il nome attuale della carta ed il nuovo nome che dovrà avere. GRASS > g.rename rast=italiadtm,italia vect=coste,coste_italia C 26 - Esempio di utilizzo del comando g.rename g.copy Permette di copiare una o più carte/elementi all'interno del mapset corrente o da un mapset qualsiasi (purché si abbiano i permessi di lettura) al mapset corrente. E' possibile copiare contemporaneamente più carte o elementi a condizione che siano di tipo diverso. Non si possono copiare, ad esempio, due carte raster diverse lanciando un'unica volta il comando. Nell'esempio riportato in C 27 vengono copiate dal mapset dati2 al mapset corrente la carta raster italiadtm e la carta vettoriale coste. Naturalmente se le carte origine sono nel mapset corrente o se il mapset in cui si trovano fa parte del percorso di ricerca definito dall'utente non è necessario specificare il nome del mapset (@dati2 nell'esempio) dopo il nome della carta. L'utilizzo dell'interfaccia grafica (map copy) è simile al comando in linea: è sufficiente indicare nei campi rispettivi sorgente e destinazione dei dati. GRASS > g.copy rast=italiadtm@dati2,italiadtm vect=coste@dati2,coste C 27 - Esempio di utilizzo del comando g.copy Attenzione: per tutti i comandi visti non è possibile fare riferimento a carte che si trovano in una location diversa di quella corrente! Esercizio 25 Copiare una carta all interno dello stesso mapset In questo esercizio si fa riferimento alle carte contenuto nel mapset dati definito all'interno della location corso. L'obiettivo dell'esercizio è effettuare una copia della carta como all'interno dello stesso mapset. Si dovrà quindi lanciare il comando g.copy, indicare il nome della carta da copiare (como) ed il nome da assegnare alla copia (che chiameremo copiacomo). Se l'operazione è stata svolta in modo corretto all'interno del mapset dati ci saranno tre carte raster: como, italiadtm, copiacomo. Il comando ha copiato tutti i file presenti nelle sottodirectory del mapset (cell, cellhd,...) relativi alla carta como chiamandoli copiacomo. Il risultato è riportato in F 44 relativamente alla directory cell: la stessa situazione è visibile in tutte le directory nelle quali era presente un file relativo alla carta che è stata copiata. 40

GESTIONE E ACCESSO AI DATI DELL'ARCHIVIO F 44 - Il contenuto della directory cell dopo il comando g.copy Esercizio 26 Rinominare una carta In questo esercizio si vuole cambiare il nome ad una carta presente nel mapset. Continuiamo a lavorare nel mapset dati all'interno della location corso. Rinominare la carta copiacomo come comodtm. La sequenza delle operazioni è simile a quella vista nell'esercizio 25: questa volta non viene però creata una nuova carta, ma cambiato il nome ad una esistente. Verranno quindi rinominati tutti i file relativi alla carta copiacomo presenti all'interno delle sottodirectory del mapset dati. In F 45 è riportato il contenuto della directory cell dopo aver lanciato il comando g.rename: rispetto alla situazione precedente (F 44) non c'è più il file copiacomo, ma al suo posto c'è il file comodtm. F 45 - Il contenuto della directory cell dopo il comando g.rename Esercizio 27 Cancellare una carta Utilizzare il comando g.remove per cancellare la carta como nel mapset dati. Questo comando elimina tutti i file relativi alla carta presenti nelle sottodirectory del mapset. Se l'esercizio è stato svolto in modo corretto all'interno delle directory cell, cellhd,... del mapset dati troveremo la situazioni di 41