U rastrových reprezentací se místo topologického překrytí používá nástroj zvaný mapová algebra. Ten je určen výhradně pro ně a umožňuje kombinovat rastrové vrstvy pomocí různých matematických operací.
Tyto matematické operace se vykonávají buď na jedné nebo na dvou (i více) vrstvách a jejich výstupem je vždy nová vrstva, kterou je samozřejmě možné používat v dalších analýzách. To vytváří z mapové algebry mocný prostředek pro prostorové modelování a analyzování.
Nástroj mapové algebry je možné využívat pomocí speciálního jazyka (jazyka mapové algebry), což je jednoduchý programovací jazyk navržený speciálně pro popis analýz prostorového modelování nad rastrovou reprezentací (viz obrázek ). Jeho syntaxe se produkt od produktu liší, ale princip zůstává stejný.
Mapová algebra používá objekty, činnosti a kvalifikátory činnosti. Ty mají obdobné funkce jako podstatná jména, slovesa a příslovce.
Objekty slouží k uložení informací, nebo jsou to vstupní hodnoty. Jako objekty se používají rastry, tabulky, konstanty, …
Činnosti jsou příkazy jazyka (operátory a funkce) - vykonávají operace na objektech
Operátory jsou obvyklé matematické, statistické, relační a logické operátory (+, -, *, /, >, <, >=, <=, <>, mod, div, and, or, not, …).
Funkce se dělí na:
Kvalifikátory řídí jak a kde se vykonává činnost (pomocné konstrukce jazyka, podmínky, cykly, …).
Ačkoli je z výkladu jasné, že primární prostředí pro mapovou algebru je příkazová řádka, produkty jako ArcView, ARC/INFO (GRID + ArcTools) nebo MGE (Grid Analyst) poskytují příjemné grafické uživatelské prostředí umožňující tvorbu maker, která alespoň zčásti suplují programy v mapové algebře.
Z hlediska počtu zpracovávaných vrstev lze operace mapové algebry dělit na operace s jednou nebo více vrstvami.
Na jedné vrstvě jsou to nejčastěji skalární operace jako je připočítávání konstanty, násobení, … atd. Jako příklad může posloužit třeba tvorba 2x převýšeného DMR pro vizualizaci ve 3D.
Na více vrstvách jsou to pak operace jako sčítání vrstev, které se vykonávají s prostorově odpovídajícími si buňkami.
Podívejme se na obrázek .
Z hlediska oblasti ze které je počítána hodnota výsledné buňky dělíme funkce mapové algebry na:
Lokální funkce se obvykle dělí na matematické, trigonometrické, exponenciální, logaritmické, reklasifikační, selekční a statistické.
Podívejme se na obrázek .
Fokální funkce se dělí na statistické funkce a na analýzy proudění. Většinou se provádějí na okolí 3x3 sousedních buněk, ale systémy často umožňují definovat sousedské okolí podle uživatele (kružnice, čtverec, …).
Ze statistických funkcí jde o stanovení např. aritmetického průměru v okolí, sumy, odchylky, min, max, rozpětí a další.
U analýz proudění se počítá směr proudění (maximální gradient z hodnot dané buňky do okolních), rychlost proudění a další. Analýzy proudění jsou základem většího počtu dalších pokročilých analýz, jako jsou hydrologické analýzy, modelování eroze.
Podívejme se na obrázek .
Zonální funkce je možné rozdělit na statistické a geometrické.
U statistických funkcí jde o statistické zpracování hodnot analyzované informační vrstvy, které patří do zóny definované v druhé informační vrstvě.
Statistické funkce mohou být opět průměry, sumy, min, max …. (viz obr. ).
Mezi geometrické funkce patří např. stanovení plochy, obvodu a dalších charakteristik každé zóny.
Globální funkce mapové algebry se zaměřují na vzdálenostní analýzy. Proto se často zařazují spíše ke vzdálenostním analýzám, o kterých budeme mluvit dále, nicméně je stále možné jejich využívání pomocí mapové algebry. Hodnota každé buňky výsledného rastru je počítána ze všech buněk zdrojového rastru.
Poznámka: V manuálu k ARC/INFO GRID je přes 25 stránek seznamu nejrůznějších funkcí, operátorů, a dalších, takže si můžete udělat představu o jak mocný nástroj se jedná.
Kde je mapová algebra k dispozici: MGE Grid Analyst, ARC/INFO Grid, GRASS ...
Zjednodušenou podobu nástroje pro mapovou algebru má i ArcGIS Spatial Analyst - Raster Calculator (nelze programovat, programy je však možné vytvářet v libovolném jazyce podporujícím COM (např.: VB, VBA, C++, Java, ...) ale i pomocí grafické aplikace ModelBuilder.