153ZODH / 1. cvičení
Úvod do GRASS GIS
Osnova
Cvičení je zaměřeno na seznámení se systémem GRASS GIS. Více informací na portálu FreeGIS.
Vysvětleny jsou základní pojmy jako je databanka, location (lokace), mapset. Spuštění systému GRASS, vizualizace jednotlivých mapových vrstev, demonstrace základních příkazů s důrazem na modulární strukturu systému. Studenti se seznámí s rozhraním příkazové řádky (CLI) a grafickým uživatelským rozhraním (GUI) systému GRASS.
Seznam použitých příkazů
Spuštění systému GRASS, základní pojmy
Poznámka: V dalším textu budeme předpokládat verzi GRASS 7.0. Pokud používáte jinou verzi, očekávejte drobné rozdíly...
GRASS spustíme příkazem
grass70
Poznámka: V učebně B-870 příkazem ./grass70-geo102
.
GRASS Database
- DATABASE (databanka)
- je adresář umístěný na disku, např.
$HOME/grassdata
. V tomto adresáři jsou v podstatě uložena veškerá data, se kterými GRASS pracuje (tedy rastrové a vektorové mapové vrstvy, atributové tabulky, popisky apod.). Jednu z mála výjimek představují atributová (popisná) data skladovaná v některém z externích databázových systémů (např. PostgreSQL, MySQL) apod.
- LOCATION (lokace)
- je adresář umístěný v databance. Obsahuje data, která souvisejí s daným projektem. Je definována souřadnicovým systémem (referenční elipsoid, kartografické zobrazení, mapové jednotky) a velikostí zájmového území.
- MAPSET (mapset)
- je souborem map, které tvoří jakýsi logický celek v rámci lokace (daného projektu). Může např. odpovídat jednotlivým uživatelům (to pokud na projektu pracuje více lidí) nebo uceleným analýzám (studium vegetace, záplavová území, ...). Každá lokace musí obsahovat alespoň jeden mapset s unikátním názvem PERMANENT. Ten většinou obsahuje základní datové vrstvy, ostatní mapsety jsou pracovní (zpracování vstupních dat, jejich analýza...).
Příklad GRASS databanky:
$HOME | +--- grassdata | | | +--- zod | | | | | +--- PERMANENT | | | | | +--- landa | | | +--- nc_spm_08 | | | | | +--- PERMANENT
Další informace na portálu FreeGIS.
Příkazy systému GRASS
GRASS je modulární systém, disponuje poměrně rozsáhlou množinou malých, ale výkonných programů. To odpovídá koncepci UNIXu jako takového, daný program má za úkol vyřešit dílčí problém, měl by být co nejmenší a poměrně jednoduchý.
Další informace na portálu FreeGIS.
Vizualizace mapových vrstev
Příkazová řádka
Data lze vizualizovat v grafickém okně tzv. "GRASS monitoru", těchto grafických oken může být celkově spuštěno 6 (označují se x0 až x6). Pro manipulaci s GRASS monitory slouží modul d.mon, pro otevření okna slouží parametr start, pro výběr select a pro zavření monitoru stop. Poznámka: Tyto příkazy nefungují pod MS Windows.
# otevřít první GRASS monitor
#
d.mon start=x0
#
# otevřít druhý GRASS monitor
#
d.mon start=x1
#
# vybrat první GRASS monitor
#
d.mon select=x0
#
# zavřít první GRASS monitor
#
d.mon stop=x1
Názvy parametrů či přepínačů lze libovolně zkracovat či dokonce vypouštět (to v případě, že se jedná o první parametr). Výše uvedený příklad lze tedy alternativně zapsat:
d.mon x0
d.mon x1
d.mon se=x0
d.mon sto=x1
Důležitým pojem je tzv. region. Region je část zájmového území (tvar pravidelného čtyřúhelníka), které je definováno hraničními souřadnicemi SEVER JIH ZÁPAD VÝCHOD. Kromě rozsahu území nese informace o prostorovém rozlišení (ve směru sever-jih, východ-západ) pro rastrová data. Výchozím regionem je region, který pokrývá (měl by) zájmové území lokace. Pro manipulaci s aktuálním regionem slouží modul g.region. Mezi podstatné volby modulu patří přepínač -d, který nastaví výchozí region a parametry rast a vect, které nastaví region podle dané mapové vrstvy.
Chceme-li tedy zobrazit družicový snímek tm1, je vhodné nejprve nastavit aktuální region podle této rastrové vrstvy (tedy území, které bude zobrazeno v GRASS monitoru) - rozsah a rozlišení.
# nastavit aktivní region podle mapové vrstvy
#
g.region rast=tm1
Pro zobrazení rastrových dat se používá modul d.rast, pro vektorová data existuje podobně d.vect. Oba moduly disponují velkou množinou přepínačů a parametrů, které ovlivňují zobrazený výsledek na monitoru.
Demonstrační příklad:
# zobrazit v GRASS monitoru vybranou rastrovou a vektorovou mapovou vrstvu
#
d.rast tm1
d.vect zelez color=yellow