Prostorové funkce¶
Atributový výběr¶
Vybírat geoprvky z vektorové mapy můžeme selektivně podle jejich kategorií a atributů, viz kapitola Atributové dotazy. Nástroj pro výběr v.extract je dostupný z menu .
Tip
Ujistěte se, že máte v pracovní cestě přidány všechny mapsety tak, abyste mohli pracovat s daty v nich obsaženými.
V následující ukázce vybereme z vektorové mapy silnice (mapset
osm) všechny dálnice (splňující podmínku typ = 1
). Výsledek
uložíme do vektorové mapy dalnice.
Obalová zóna¶
Obalovou zónu pro vektorová data vytváří modul v.buffer ( ).
Příklad vytvoření obalové zóny kolem dálnic s šířkou 5 km.
v.buffer input=dalnice output=hluk distance=5000
Tip
Výpočet může trvat delší dobu jelikož je dálnice reprezentována vždy dvěma pruhy. Pomocí modulu v.clean můžeme reprezentaci dálnice převést pouze na jednu lomenou čáru tím, že jeden z pruhů sloučíme s druhým.
v.clean input=dalnice output=dalnice1 tool=snap threshold=100
Operace překrytí¶
Tyto operace zajišťuje modul v.overlay ( ).
Sjednocení (union)¶
V našem případě vytvoříme vektorovou mapu chranena_uzemi (4) sjednocením (3) velkoplošných (2) a maloplošných chráněných území (1).
Spuštění z příkazové řádky
v.overlay ainput=maloplosna_uzemi binput=velkoplosna_uzemi_zonace operator=or output=chranena_uzemi
K výsledné vektorové mapě je přiřazena atributová tabulka, která je
spojena z obou vstupních vektorových map. Atributy první vektorové
mapy (ainput
) jsou označeny prefixem a_
, atributy druhé
(binput
) prefixem b_
.
Průnik (intersection)¶
V tomto případě zjistíme, jak obalová zóna dálnic (2)
zasahuje do chráněných území (1). Opět spustíme modul
v.overlay a použijeme operaci průnik (operátor and
-
(3)).
Spuštění z příkazové řádky
v.overlay ainput=chranena_uzemi binput=hluk operator=and output=dalnice_chranena_uzemi
Spojení vektorových map (merge)¶
Spojení vektorových prvků ze vstupních map umožňuje modul v.patch ( ). Na rozdíl od v.overlay tento modul neprovádí překryvnou operaci ale nýbrž prosté uložení prvků ze dvou a více vstupních map do výstupní mapy.
Spuštění z příkazové řádky
v.patch input=silnice,zeleznice output=doprava
Generalizace vektorových prvků¶
Proces generalizace vektorových prvků umožňuje modul v.generalize. Kromě generalizace (zobecnění, zjednodušení - simplification) lze tento modul použít i pro opačný proces, tj. vyhlazení (smoothing). Modul podporuje celou řadu generalizačních algoritmů, viz dokumentace modulu. V následujících ukázkách je použit algoritmus Ramer–Douglas–Peucker algorithm.
Následuje příklad generalizace liniových prvků. Příkaz vypisuje procento zachovaných lomových bodů.
v.generalize input=zeleznice output=zelenice_g method=douglas threshold=100
v.generalize complete. Number of vertices for selected features reduced
from 409477 to 85018 (20% remaining)
Vzhledem k tomu, že je GRASS GIS topologický GIS, tak proces generalizace plošných prvků automaticky zachovává prostorovou topologii prvků, viz příklad generalizace vrstvy obcí.
v.generalize input=obce@ruian output=obce_g method=douglas threshold=20