Vektorizace, tvorba geodatabáze, kontrola topologie
Cíl cvičení
Ukázka automatického ořezu footprintu. Tvorba vlastní geodatabáze, vektorizace a práce s atributy. Kontrola topologie vektorových dat.
Základní pojmy
-
geodatabáze – prostředí pro správu bází geografických dat
-
dataset – soubor shrnující pod sebe vybrané třídy prvků se stejným souřadnicovým systémem
-
vektorizace – přepracování mapy v analogové formě, popř. digitální mapy v rastrové formě do vektorové formy
-
třída prvků – homogenní kolekce společných prvků, z nichž má každý stejnou prostorovou reprezentaci (např. body, linie nebo polygony) a společnou sadu sloupců atributů
-
subtyp – množina prvků v tabulce, které mají stejné atributy; používají se pro kategorizaci dat
-
topologie – definování struktury prvků geosystému na základě jejich vztahů konektivity (vzájemného spojení) a kontinuity (vzájemné polohy)
Použité datové podklady
Náplň cvičení
Založení nové geodatabáze
1. Geodatabázi vytvoříme kliknutím pravým tlačítkem myši na složku našeho projektu v záložce Catalog -> New -> File Geodatabase.
Poznámka ke geodatabázi:
Takto vytvořenou geodatabázi můžeme otevřít v jakémkoliv GIS softwaru (např. ArcGIS PRO, QGIS). Je proto vhodná pro sdílení dat.
Importu předem georeferencovaného rastru
1. Do mapy si načteme částečně georeferencované listy Státní mapy 1 : 5 000 – odvozené (SMO5). Bude nutné negeoreferencované listy souřadnicově umístit.
2. Oproti císařským otiskům stabilního katastru, které se georeferencují na identické body v mapě, lze SMO5 georeferencovat na rohové body mapových listů, které mají dané souřadnice v sysému S–JTSK (EPSG:5514). Pro georeferencování použijeme síť kladu mapových listů SMO5 (síť o rozměrech 2,5x2 km).
3. Dle postupu z minulého cvičení si případně georeferencujeme zbývající souřadnicově nepřipojené mapové listy. Následně vytvoříme v nové geodatabázi mozaiku, do které georeferencované rastry importujeme.
Automatický ořez footprintu
Ve stavu, kdy máme přidané georeferencované rastry do mozaiky, je potřeba oříznout jejich footprint tak, aby se vytvořila bezešvá mapová vrstva. Footprint lze upravit ručně (viz minulé cvičení) nebo automaticky načtením kladu mapových listů.
1. V mapovém okně otevřeme mozaiku a klad mapových listů. Kladu změníme symbologii tak, abychom viděli pouze hrany listů.
2. Před automatickým ořezem footprintů je nutné zkontrolovat pojmenování listů, které musí být jak v mozaice, tak v kladu listů stejné. Případně je potřebný jiný jednoznačný atribut, na základě kterého se obě vrstvy propojí.
3. Automatický ořez footprintu se nastaví pravým kliknutím myši na danou mozaiku -> Modify -> Import Footprints or Boundary.
4. Ve funkci Import Mosaic Dataset Geometry nastavíme parametry dle obrázku níže.
-
Target Feature Class – vrstva, jejíž geometrii chceme upravit.
-
Target Join Field – sloupec s jednoznačným indetifikátorem výstupní vrstvy.
-
Input Feature Class – ořezová vrstva.
-
Input Join Field – sloupec s jednoznačným indetifikátorem ořezové vrstvy.
5. Výsledek funkce Import Mosaic Dataset Geometry je vidět níže.
Vytvoření nového datasetu v geodatabázi
1. Pro vytvoření souhrného datasetu, ve kterém budeme následně uchovávat některé datové vrstvy, je nutné kliknout pravým tlačítkem na cílovou geodatabázi -> New -> Feature Dataset.
2. Otevře se funkce Create Feature Dataset, ve které určíme mimo cílové geodatabáze také název a souřadnicový systém datasetu.
Vektorizace
Pro analýzu rastrových map, je téměř vždy nutná jejich vektorizace, tedy převedení mapy do vektorové podoby. Existují různé možnosti automatizace tohoto procesu, ale my si ukážeme nejjednodušší metodu, kterou je manuální vektorizace.
Založení třídy prvků
1. Nejprve je nutné vytvořit si třídy, do kterých budeme vektorizaci zakreslovat. Tento krok se samozřejmě liší dle specifik dané práce, ale pro naši ukázku to znamená, že musíme vytvořit třídy pro typy využití pozemků SMO5, kterou budeme vektorizovat:
- plochy – les, louka, pastvina, orná půda, nádvoří, zahrada, hřbitov apod.
- domy – kostel, domy bez značení
- vodstvo – vodní toky, vodní plochy
- cestní síť
Tip před tvorbou třídy prvků:
Před tvorbou tříd prvků pro vektorizaci rastrové mapy je vhodné nahlédnout do legendy, abychom měli představu o mapovém obsahu.
2. Pro vytvoření třídy prvků musíme kliknout pravým tlačítkem na příslušný Feature Dataset v Catalogu -> New -> Feature Class.
3. V této ukázce vytvoříme 4 třídy prvků (plochy, domy, vodstvo a cesty). Ve funkci Create Feature Class zvolíme jméno třídy a její typ (pro nás Polygon). Následně klikneme na Next.
4. Na druhé stránce funkce Create Feature Class nastavujeme atributová pole třídy. Zde vytvoříme nové pole s názvem druh_pozemku po kliknutí na tlačítko Click here to add a new field. Datový typ přiřadíme číselný, například Long Integer. Tato čísla budou reprezentovat kódy různých druhů pozemku v mapě. Pokračujeme tlačítkem Next.
5. Na třetí stránce zkontrolujeme souřadnicový systém třídy prvků. Nastavení na dalších stránkách můžeme pomechat ve výchozím stavu.
Práce se subtypy
Pro kategorizaci dat v atributové tabulce je vhodné používat subtypy. V jednoduchosti se jedná o kódy jednotlivých typů atributů v tabulce, kterým je přiřazen popis pro přehlednější práci. V této ukázce vytvoříme subtypy pro třídu prvků Plochy, který nám bude určovat druh využití pozemku.
1. Zobrazíme si atributovou tabulku vrstvy Plochy.
2. V horní části programu si rozklikneme záložku Table
3. Otevře se nám nová nabídka, ve které zvolíme tlačítko Subtypes a následně Create/Manage.
4. V okně Manage Subtypes vybereme pole (Subtype Field), které chceme editovat a přiřadíme kódy dle druhů využití pozemků, které budeme na zájmovém území vektorizovat. Není problém se kdykoliv do této nabídky vrátit v průběhu práce a případně nový subtyp přidat či smazat.
5. Editaci potvrdíme tlačítkem OK a následně ji uložíme ikonou Save v horní části obrazovky.
Rozlišení subtypů v symbologii:
Pro přehlednější práci s daty, je vhodné rozlišit typy ploch barevně. To lze provést přes kliknutí pravým tlačítkem na vrstvu v Contents -> Symbology -> změnit Single Symbol na Unique Values -> změnit atribut v nabídce Field 1 na požadovaný (např. druh_pozemku).
Kresba
Následuje samotný proces vektorizace, tedy "obkeslení" rastrových dat a vytvoření nových dat ve vektorové formě.
1. Nástroje editace vektorových dat se nacházejí v záložce Edit v horní části programu.
2. Nové prvky vytvoříme tlačítkem Create -> zvolení kresby daného subtypu v okně Create Features.
3. Vektorizované body přidáváme levým tlačítkem myši. Pro dokončení vektorizace určitého prvku buď dvakrát klikneme levým tlačítkem myši nebo zvolíme ikonu Finish v nástrojích v dolní části obrazovky. Při vektorizaci je potřeba myslet na nastavení přichycování bodů (Snapping).
Popis nejčastěji používaných funkcí a klávesových zkratek pro editaci vektorových dat:
Right Angle Line | pravoúhlá linie |
Direction Direction | průsečík dvou linií |
Arc Segment | oblouk |
Trace | přichycení na jiný vektorový prvek v mapě |
stisknutí D | určení délky linie |
stisknutí A | určení úhlu linie |
stisknutí P | rovnoběžná kresba s linií určenou kurzorem myši |
držení T | zobrazení lomových bodů v okolí kurzoru |
stisknutí F2 | dokončení kresby |
stisknutí F3 | dokončení kresby v pravém úhlu |
stisknutí pravého tlačítka myši | zobrazení dalších možností kresby |
Uložení editace:
Po provedení změn v editaci vektorových dat, je nutné je uložit tlačítkem Save v záložce Edit.
Kontrola topologie vektorových dat
Jestliže chceme zkontrolovat topologickou čistotu vektorových dat, musejí být veškerá kontrolovaná data uložena uvnitř jednoho datasetu.
1. Pro vytvoření nové topologie klikneme pravým tlačítkem myši na dataset -> New -> Topology.
2. Na první stránce otevřeného okna Create Topology Wizard se definují parametry topologie, tedy její název, přesnost a vstupní vrstvy.
3. Druhá stránka obsahuje definice jednotlivých kontrolovaných topologických pravidel. Ta se nastaví dle potřeby. V této ukázce proběhne kontrola pravidel Must Not Have Gaps (Area) (data nesmí obsahovat mezery), Must Not Overlap With (Area-Area) (vrstvy se vzájemně nesmějí překrývat) a Must Not Overlap (Area) (jednotlivé vrstvy sami sebe nesmějí překrývat).
4. Třetí stránka obsahuje souhrn celé topologie. Tlačítkem Finish spustíme kontrolu.
5. Pokud se ve výstupním datasetu topologie nezobrazí, aktualizujeme jeho obsah kliknutím pravého tlačítka myši -> Refresh.
6. V následujícím kroku je potřeba kontrolu topologie validovat kliknutím pravým tlačítkem na topologii v Catalogu -> Validate.
7. Po validování přesuneme vrstvu topologie do mapového okna a měly bychom vidět objevené chyby.
8. Pomocí nástrojů Edit opravíme vyznačené chyby v původních datech. Po editaci topologii znovu validujeme a jestliže kontrola topologie neobjeví žádné chyby, znamená to, že kontrolované vrstvy jsou topologicky korektní.
Na obrázku níže je zobrazena ukázka dvou nalezených topologických chyb (levý horní snímek). Pravý horní snímek zobrazuje pohled na data bez opravy topologie. Při porovnání s pravým dolním snímkem je zřejmé, že vektorizace cesty chybně překryla vektorizaci pastviny. Snímek vlevo dole zobrazuje druhou chybu, tedy vzájemný překryv dvou prvků patřících do vrstvy Cesty.
Tipy po urychlení kontroly topologie:
- Pokud je to možné, lze u dat se stejným atributem (např. les, louka) provést Dissolve, kterým ze sloučených dat odstraníme případné chyby z překryvu stejnou vrstvou (třeba dvě louky vzájemně se překrývající).
- Pro zjednodušení kontroly topologie je možné všechna kontrolovaná data sloučit do jedné vrstvy, kterou následně zkontrolujeme samotnou. Nemusíme tedy řešit překryvy jednotlivých vrstev mezi sebou (Must Not Overlap With), ale zkontrolujeme pouze novou vrstvu samostatně vůči sobě (Must Not Overlap). Důležité je však po kontrole nezapomenou opravit případné chyby v původních datech.
- Odkaz na schématicky popsaná pravidla kontroly topologie je ZDE.
Úlohy k procvičení
Úlohy
K řešení následujích úloh použijte datovou sadu ArcČR
500 verzi 3.3 dostupnou na disku S ve složče
K155\Public\data\GIS\ArcCR500 3.3
. Zde také najdete souboru s
popisem dat ve formátu PDF.
-
Zjistěte, jaká je délka silnic I. třídy, II. třídy a III. třídy na mapovém listu ZM10 02-34-14
Postup:
- vytvořte datový model pro silniční síť ČR (včetně domén, příp. subtypů)
- nastavte topologická pravidla pro příslušný dataset (silnice se nesmí křížit, nesmí mít volné konce,...)
- připojte si pomocí služby ArcGIS Online (Add Data ► From ArcGIS Online) data ZM10 (datová vrstva Základní mapy ČR (S-JTSK))
- zvektorizujte území zájmového mapového listu
- exportujte vektorizovaná data do souřadnicového systému S-JTSK (Krovak East North)
- určete délku jednotlivých typů silnic na mapovém listu
-
Zjistěte délku a průběh nejkratší silniční spojnice z křižovatky na východ od osady Kocourov do ústřední křižovatky (350 m n. m.) ve vsi Sutom. Zjistěte úhrnnou plochu lesů.
K vypracování úlohy využijte dvojice rastrů Státní mapy odvozené (SMO-5) – původního vydání z počátku 50. let 20. století. Rastry Litoměřice 7–5 a 7–6 jsou k dispozici zde. Na stejném místě najdete také klad Státní mapy 1 : 5000 v podobě Shapefile. Vyzkoušejte si možnosti vizuální úpravy světlosti a barevnosti rastrů pomocí Image analysis.
Postup:
- využijte dříve vytvořený datový model pro silniční síť ČR – v GDB založte novou třídu prvků
- stáhněte si klad listů Státní mapy 1 : 5000 a oba mapové listy (pracujte v systému S-JTSK)
- georeferencujte oba listy projektivní transformací na dodaný klad
- vytvořte bezešvý kus kresby SMO-5 formou mozaiky s mapovými listy oříznutými kladem na pouhé mapové pole
- zvektorizujte předmětné silnice mezi Kocourovem a Sutomí
- odečtěte vzdálenost různými cestami, změřte a vyberte nejkratší
- založte třídu prvků pro lesy a zvektorizujte plochy lesů (neuvažujte lesopark ve Vlastislavi)
- zachovejte si data z dnešní hodiny – během cvičení na téma WFS si porovnáte vámi zvektorizované části silniční sítě a lesních ploch s daty ze ZABAGED
Pozn.: mapové listy SMO-5 jsou graficky upraveny, aby byl patrnější obsah. Původně byly mapové listy zažloutlé a s nevýraznou kresbou. Jedná se o vůbec první vydání tohoto mapového díla. V současnosti se používá označení SM-5 (Státní mapa 1 : 5000) a vypadá vizuálně poněkud jinak, přestože základní obsah je shodný a znakový klíč doznal jen drobnějších změn.
-
Zjistěte délku katastrální hranice mezi k. ú. Pnětluky a k. ú. Vlastislav.
K vypracování úlohy využijte rastr PCO tehdejšího katastráního území Netluk (dnes Pnětluky u Podsedic; část obce Podsedice) z roku 1843. Rastr je k dispozici ve stejné složce jako předchozí data. Vyzkoušejte si obecně nerovnoběžníkový tvar ořezu rastru v mozaice.