6. Cvičení

Cvičení bude probíhat nad daty, která si stáhnete zde. Konkrétně model geodatabáze S-JTSK s doménami.

A co že jsme si to stáhli? Jedná se o personal geodatabase s nastaveným souřadnicovým systémem a doménami tak, aby prostorové vyjádření dat vyhovovalo podmínkám vyjádření prostorových dat v rámci České republiky.

Nyní už vzhůru do cvičení.

  1. Otevřeme si ArcCatalog a najdeme geodatabázi s názvem domeny.mdb.

    Obrázek 5.2. personal geodatabase domeny.mdb

    personal geodatabase domeny.mdb

  2. Zobrazíme si obsah této geodabáze.

    Obrázek 5.3. Zobrazení obsahu personal geodatabase domeny.mdb

    Zobrazení obsahu personal geodatabase domeny.mdb

    Vidíme, že naše geodatabáze obsahuje dva feature datasets s názvy S-JTSK a S-JTSK_milimetry. My se budeme soustředit na feature dataset S-JTSK. Pokud kliknete na název tohoto datasetu, uvidíte, že je prázdný, neobsahuje tedy žádnou feature class. Rovněž má tento feature dataset nastaven souřadnicový systém a domény tak, aby vyhovoval podmínkám vyjádření prostorových dat v rámci České republiky. Snadno se o tom přesvědčíme stisknutím pravého tlačítka myši nad názvem feature datasetu a volbou Properties.

    Obrázek 5.4. Feature Dataset Properties

    Feature Dataset Properties

    Pokud bychom nyní vytvořili novou feature class a umístili ji do feature dataset S-JTSK, měli bychom zaručeno, že pro tuto nově přidanou feature class nenastanou problémy při požadavku správného nastavení souřadnicového systému pro data umístěná v nové feature class. Všechny feature classes v rámci jednoho feature datasetu musí mít shodný souřadnicový systém!

  3. Exportujeme do feature dataset S-JTSK čtyři nové feature classes. Jako první to bude soubor kraje.shp. Všimněte si, že po exportu zdrojového souboru typu shapefile do prostředí personal geodatabase už hovoříme o feature class. Při exportu je nutné nejprve vybrat příslušný soubor, pak pravé tlačítko a zvolit Export – To Geodatabase (Single).

    Obrázek 5.5. Spuštění exportu souboru .shp do personal

    Spuštění exportu souboru .shp do personal

    V zobrazeném dialogovém okně vybereme feature dataset, do kterého chceme data exportovat a název pro novou feature class. Pokud máme vše nastaveno, můžeme stisknout OK.

    Obrázek 5.6. Nastavení cílového feature dataset a názvu nové feature class

    Nastavení cílového feature dataset a názvu nové feature class

    Že jsme byli úspěšní, zjistíme velmi snadno – podíváme se do obsahu feature dataset S-JTSK, ve kterém by se nám měla objevit nová feature class pod námi zvoleným názvem.

    Obrázek 5.7. Feature dataset S-JTSK nyní již obsahuje feature class krajeSJTSK

    Feature dataset S-JTSK nyní již obsahuje feature class krajeSJTSK

    Shodně exportujeme i soubor okresy.shp (jako feature class okresySJTSK), zel_stan.shp (zel_stanSJTSK) a zelez.shp (zelezSJTSK).

    Nyní máme ve feature dataset S-JTSK čtyři feature classes – krajeSJTSK, okresySJTSK, zel_tratSJTSK a zelezSJTSK. Data v těchto feature classes reprezentují okresy v krajích a železniční zastávky společně s železničními tratěmi. Očekáváme, že železniční zastávky budou „ležet“ na železničních tratích. Jak to ale ověřit a zajistit?

  4. K tomu využijeme možnosti definovat topologické pravidlo, které se bude vztahovat na prvky našich dvou vybraných feature classes. Nezapomeňte, že topologické pravidlo lze aplikovat mezi feature classes v rámci jednoho feature datasetu. Ale zpět k ukázce definování topologického pravidla.

    Klikneme pravým tlačítkem myši nad názvem feature dataset S-JTSK a zvolíme New – Topology. Spustí se nám průvodce přidáním topologie. Vyplníme název pro novou topologii. Hodnotu cluster tolerance zvolíme 50. Hodnota cluster tolerance udává, v jaké vzdálenosti od sebe mohou být dva prvky, aby byly považovány ještě za shodné.

    Obrázek 5.8. Určení jména a hodnoty cluster tolerance nové topologie

    Určení jména a hodnoty cluster tolerance nové topologie

    Vybereme feature classes, mezi jejímiž prvky chceme topologii definovat.

    Obrázek 5.9. Výběr participujících feature classes na nové topologii

    Výběr participujících feature classes na nové topologii

    Nyní je nutné nastavit „rank“ pro každou feature class. Objasněme si toto nastavení. V geodatabázi máme data reprezentující železniční zastávky a železniční tratě a definováno topologické pravidlo, že bod reprezentující železniční zastávku se má nacházet na linii reprezentující danou železniční trať. Při kontrole definovaného topologického pravidla ArcMap zkontroluje, zda je bod (zastávka) na linii (trať) a v případě, že by daný bod na linii neležel, ale byl by od ní ve vzdálenosti menší rovno hodnotě cluster tolerance (viz. předcházející krok), musí se rozhodnout, s jakým objektem (zda bodem či linií) „hýbnout“, aby mohlo být topologické pravidlo splněno. Pokud bychom chtěli, aby se bod přesunul na linii, musí linie (trať) mít nastavenu vyšší „rank“ hodnotu. Toto skutečně chceme, proto provedeme nastavení podle následujícího obrázku:

    Obrázek 5.10. Nastavení "rank" hodnoty pro jednotlivé feature classes

    Nastavení "rank" hodnoty pro jednotlivé feature classes

    Přidáme požadované topologické pravidlo POINT MUST BE COVERED BY LINE.

    Obrázek 5.11. Výběr vhodného topologického pravidla

    Výběr vhodného topologického pravidla

    Stiskneme OK, poté Další a Dokončit. Po vytvoření topologie budeme dotázáni, zda chceme zkontrolovat topologii už nyní. Vybereme možnost Ano, aby došlo ke kontrole topologie. Kontrola by měla proběhnout s kladným výsledkem.

  5. Nyní máme mezi feature class zel_stanSJTSK a feature class zelezSJTSK definováno topologické pravidlo. Můžeme vidět, že náš feature dataset S-JTSK již obsahuje prvek nazvaný Topology_SJTSK.

  6. Zkusíme nyní odstranit feature class zel_stanSJTSK. Vidíme, že se nám to nepodaří. Důvod je jednoduchý – feature class participuje na nadefinované topologii. Stejného výsledku bychom se dobrali i v případě, že bychom se chtěli pokusit odebrat z geodatabáze feature class zelezSJTSK. Důvod zůstává stejný.

    Obrázek 5.12. Vidíme, že nyní není možně feature zel_stanSJTSK odstranit z geodatabáze

    Vidíme, že nyní není možně feature zel_stanSJTSK odstranit z geodatabáze

  7. Pokud stiskneme pravé tlačítko myši nad nově vytvořenou topologií (Topology_SJTSK), vybereme Properties a na kartě Errors poté Generate Summary, vidíme, že všechny železniční zastávky splňují definované topologické pravidlo.

    Obrázek 5.13. Kontrola validity prvků participujících na topologii

    Kontrola validity prvků participujících na topologii

  8. Abychom se přesvědčili, že se nám data ze zdrojových souborů neschovala po exportu do personal geodatabase v nějaké černé skříňce, otevřeme si ArcMap a načteme si feature classes z naší geodatabáze. Nyní s daty můžeme pracovat tak, jak to již známe a umíme...

    Obrázek 5.14. Načtení dat z personal geodatabase do prostředí ArcMap

    Načtení dat z personal geodatabase do prostředí ArcMap