ˇ Z ÁPADO CESKÁ UNIVERZITA V P LZNI ˇ FAKULTA APLIKOVANÝCH V ED
Využití moderních metod pro tvorbu map pro orientaˇcní bˇeh ˇ B AKALÁ RSKÁ PRÁCE
Jakub Šilhavý
jaro 2007
Prohlášení Prohlašuji, že tato bakaláˇrská práce je mým puvodním ˚ autorským dílem, které jsem vypracoval samostatnˇe. Všechny zdroje, prameny a literaturu, které jsem pˇri vypracování používal nebo z nich cˇ erpal, v práci rˇ ádnˇe cituji s uvedením úplného odkazu na pˇríslušný zdroj.
Vedoucí práce: Ing. Karel Jedliˇcka ii
Podˇekování Tímto bych chtˇel podˇekovat vedoucímu bakaláˇrské práce Ing. Karlu Jedliˇckovi za metodické vedení a vˇecné pˇripomínky pˇri zpracování diplomové práce. Velké podˇekování patˇrí také celé mojí rodinˇe za podporu nejen pˇri zpracování této práce, ale i bˇehem celého studia.
iii
Abstrakt Práce určuje metodický postup digitální tvorby mapy pro orientační běh. Zabývá se výběrem, zhotovením a použitím mapových podkladů, způsobem digitálního sběru dat a jejich konverzí do výsledného formátu. Práce z technologického hlediska využívá program ArcPad a datový formát Shapefile (sběr dat), datový formát DXF (pomocný formát pro konverzi) a kartografický program OCAD (zhotovení výsledné mapy).
Klíčová slova Mapa pro orientační běh; mobilní GIS; mapování; ArcPad; OCAD.
Abstract The bachelor thesis defines the methodical procedure of the digital creation of map for orienteering. It concerns with selection, creation and using of the map foundations, the manner of digital data collection and data conversion to finally data format. The thesis is based on software ArcPad and data format Shapefile (data collection), data format DXF (auxiliary format for conversion) and cartographic program OCAD (completing map).
Keywords Map for orienteering; mobile GIS; ArcPad; mapping; OCAD.
iv
Obsah 1
Úvod - Využitelné a využívané technologie . . . . . . . . . 1.1 Klasická metoda . . . . . . . . . . . . . . . . . . . . . . . 1.2 Digitální rˇ ešení . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 Vybavení . . . . . . . . . . . . . . . . . . . . . . . 2 Pˇríprava mapových podkladu˚ . . . . . . . . . . . . . . . . . 2.1 Dostupné podklady . . . . . . . . . . . . . . . . . . . . . 2.2 Z teorie . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Souˇradnicové systémy . . . . . . . . . . . . . . . 2.2.2 Magnetický sever . . . . . . . . . . . . . . . . . . 2.3 OCAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Práce se symboly . . . . . . . . . . . . . . . . . . 2.3.2 Import DXF . . . . . . . . . . . . . . . . . . . . . 2.3.3 Naˇctení pˇredlohy . . . . . . . . . . . . . . . . . . 2.4 ArcPad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Pˇríprava pˇred mapováním . . . . . . . . . . . . 2.4.2 Tvorba formuláˇru˚ pro sbˇer dat . . . . . . . . . . 2.4.3 Tvorba symbologie pro ArcPad . . . . . . . . . . 3 Terénní mapování a zpracování namˇerˇených dat . . . . . . 3.1 Práce s ArcPad v terénu . . . . . . . . . . . . . . . . . . 3.1.1 Sbˇer dat . . . . . . . . . . . . . . . . . . . . . . . 3.1.2 Specifika digitálního sbˇeru dat . . . . . . . . . . 3.2 Zpracování sebraných dat v PC . . . . . . . . . . . . . . 3.2.1 Konverze SHP do DXF . . . . . . . . . . . . . . . 3.2.2 Tvorba vlastního programu v jazyce Python . . 3.2.3 Použití programu Úpravce DXF . . . . . . . . . 3.2.4 Import SHP . . . . . . . . . . . . . . . . . . . . . 3.2.5 Specifika digitálního zpracování dat . . . . . . . 4 Možnosti šíˇrení digitální mapy . . . . . . . . . . . . . . . . . 4.1 Rastrové formáty . . . . . . . . . . . . . . . . . . . . . . 4.2 Vektorové formáty . . . . . . . . . . . . . . . . . . . . . 4.3 Speciální formáty . . . . . . . . . . . . . . . . . . . . . . 5 Závˇer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1 Porovnání klasických a moderních metod tvorby mapy 5.2 Použité technologie . . . . . . . . . . . . . . . . . . . . . Seznam použitých zdroju˚ a literatury . . . . . . . . . . . . . . . . A Pˇriložené soubory . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 1 1 1 3 3 3 4 4 5 6 7 10 12 12 13 16 19 19 19 20 23 24 25 28 29 31 32 32 33 33 35 35 36 38 39
v
Kapitola 1
Úvod - Využitelné a využívané technologie Mapa pro orientaˇcní bˇeh vzniká ve vˇetšinˇe pˇrípadu˚ novým mapováním. Práce si klade za cíl vytvoˇrit metodiku tvorby mapy pro orientaˇcní bˇeh výhradnˇe digitální cestou. Je snahou ˇ dosáhnout výsledku s co nejnižšími náklady. Rešení se proto zakládá na volnˇe dostupném software a mezi orientaˇcními bˇežci rozšíˇreném kartografickém programu OCAD 8 Standard. Zárovenˇ práce nabízí pohled na použití verze OCAD 9 Professional a na usnadnˇení a možnosti z toho plynoucí. Po dokonˇcení tvorby mapy se práce zamˇerˇ í na její publikaci v šiˇritelných digitálních formátech.
1.1
Klasická metoda
Tato metoda je bˇežnˇe používanou a není k ní zapotˇrebí zvláštního vybavení. K vytvoˇrení mapy je zapotˇrebí vytisknout mapové podklady, pˇrelepit je prusvitnou ˚ fólií s obkreslenou souˇradnicovou sítí, nalepit na tvrdé desky, s pomocí buzoly, krokování a odhadu zakreslovat skuteˇcnost barevnými pentelkami na onu fólii a ruˇcnˇe tak tvoˇrit mapový podklad, který po naskenování poslouží jako pˇredloha pro pˇrekreslení v software OCAD v hotovou mapu. Podrobný popis klasické metody naleznete na stránkách
.
1.2
Digitální rˇešení
S rozvojem mobilních technologií (a hlavnˇe s jejich vˇetší dostupností široké veˇrejnosti) jako jsou GPS (Global Positioning System), PDA (Personal Digital Assistant), software pro mobilní GIS (Geographic Information System), se nabízí možnost tvoˇrit digitální podobu mapy již v terénu. Odpadají tak nedostatky klasické metody, kterými jsou cˇ asová nároˇcnost a vˇetší náchylnost k chybám. Princip a použití této metody pˇriblížím v následujících odstavcích bakaláˇrské práce. 1.2.1 Vybavení Mezi vybavení do terénu patˇrí PDA s nainstalovaným speciálním software pro mobilní GIS, muže ˚ jím být ArcPad od firmy ESRI (<www.esri.com/arcpad>) [4], TerraSync od firmy Trimble (
) a jiné. Dále sem patˇrí GPS pˇrijímaˇc, ten muže ˚ být pˇrímo souˇcástí PDA nebo mohou být obˇe zaˇrízení 1
ˇ 1.2. DIGITÁLNÍ REŠENÍ spojeny napˇr. pˇres bluethooth 1 . Pro zpracování namˇerˇ ených dat v kanceláˇri využijeme PC cˇ i notebook s kartografickým programem. Pro kreslení map pro orientaˇcní bˇeh se nabízí software OCAD. V rámci bakaláˇrské práce bylo provádˇeno mˇerˇ ení v konfiguraci PDA Fujitsu Siemens s nainstalovaným operaˇcním systémem Windows CE a software ArcPad 7.0 spojeného pˇres bluethooth s mobilním pˇrijímaˇcem GPS. Zpracování v kanceláˇri probˇehlo v programu OCAD ve verzích 8 Standard [19] a 9 Professional [16]. Metody jsou popsány pro obˇe verze. Co se týká programu ArcPad, je volnˇe ke stažení na stránkách ESRI () v plnˇe funkˇcní verzi, kterou lze provozovat v 20 minutových intervalech. OCAD 9 je zdarma jen v omezené verzi Standard na stránkách (), ta je ovšem omezena maximálním poˇctem 500 nakreslených objektu˚ a nepovoluje ukládání.
1. bezdrátový protokol pro bezdrátovou komunikaci elektronických zaˇrízeních
2
Kapitola 2
Pˇríprava mapových podkladu˚ Pˇred samotným mapováním vˇenujeme cˇ as pˇrípravˇe mapových podkladu. ˚ To znamená seženeme dostupné podklady a pˇrizpusobíme ˚ je pro práci v programech OCAD a ArcPad. Tím získáme vše potˇrebné pro samotné mapování.
2.1
Dostupné podklady
Je sice možné zaˇcít mapovat "na zelené louce", ale vhodné podklady nám poskytnou cenný zdroj informací a mohou ulehˇcit spoustu práce. Pˇri výbˇeru podkladu˚ se zamˇerˇ íme na jejich datový formát, dostupnost a zpusob ˚ použití. Technicky si podklady rozdˇelíme na vektorové a rastrové. Pˇríkladem vektorových podkladu˚ je výškopis v podobˇe vrstevnic dostupný za úplatu z GEOPORTÁLU Zemˇemˇerˇ ického úˇradu ve formátu DXF (Data eXchange Format). Vrstevnice mají interval E = 5 m (2 m pro rovinná území) a jsou pˇrímo použitelné pro naší mapu. Podobnˇe si mužeme ˚ opatˇrit i vektorový polohopis, zdrojem nám bude opˇet GEOPORTÁL Zemˇemˇerˇ ického úˇradu a formát DXF. Vzhledem ke speciálnímu obsahu mapy pro orientaˇcní bˇeh polohopis využijeme spíše pro kontrolu. Formát DXF je snadno importovatelný do software OCAD. Pˇri digitálním mapování se setkáme s dalším vektorovým formátem SHP (ESRI Shapefile). V nˇem budou ukládány výsledky našeho mapování, ty mužeme ˚ také považovat za mapové podklady pro další práci. Import SHP je popsán v 3.2.4. Z rastrových podkladu˚ použijeme ortofoto (pravoúhlý prumˇ ˚ et terénu) naší zájmové lokality. Jako zdroj mužeme ˚ použít Portál veˇrejné správy . Zde si opatˇríme rastrový soubor ve formátu BMP, JPEG, GIF nebo TIFF spolu s lokalizaˇcním souborem (world file). Ortofoto lze naˇcíst do obou programu˚ OCAD i ArcPad, v kanceláˇri poslouží spolu s polohopisem pro kontrolu a v terénu poskytne mapaˇri komplexní pˇrehled o mapovaném území. Naˇctení rastru je díky lokalizaˇcnímu souboru stejnˇe snadné jako v pˇrípadˇe naˇctení DXF. Velmi dobrým zdrojem informací jsou také starší mapy pro orientaˇcní bˇeh. Jejím naskenováním dostáváme rastr bez lokalizaˇcního souboru, který se naˇcítá trochu odlišným zpusobem ˚ (viz 2.3.3).
2.2
Z teorie
Pˇred zaˇcátkem tvorby mapy je dobré vˇedˇet nˇeco málo teorie o souˇradnicových systémech, se kterými se pracuje a o jejich vztahu k mapám pro orientaˇcní bˇeh. 3
2.2. Z TEORIE 2.2.1 Souˇradnicové systémy ˇ Nejpoužívanˇejším souˇradnicovým systémem civilního mapování pro Ceskou republiku je Systém jednotné trigonometrické sítˇe katastrální (S-JTSK). Nové mapy vznikají výhradnˇe v nˇem, tedy i všechny dostupné digitální mapové podklady, které pro tvorbu mapy pro orientaˇcní bˇeh využijeme.
Obrázek 2.1: Souˇradnicová sít’ S-JTSK U S-JTSK zaujímá osa X smˇer zemˇepisného poledníku procházejícího poˇcátkem souˇradnicového systému (23◦ 50’ východní délky). Kladná osa X smˇerˇ uje na jih. Souˇradnicové sítˇe na mapách nesmˇerˇ ují k zemˇepisnému severu, ale jsou vuˇ ˚ ci nˇemu natoˇceny o hodnotu meridiánové konvergence. Je to úhel mezi zemˇepisným poledníkem a rovnobˇežkou s osou X v daném místˇe (viz obr. 2.1). [18] 2.2.2 Magnetický sever Na mapách bývá uveden zemˇepisný sever a nˇekdy i místní magnetická deklinace a její roˇcní zmˇena. Magnetická deklinace je úhel mezi smˇerem, který ukazuje stˇrelka magnetického kompasu v daném místˇe, a zemˇepisným severem. Mˇení se v závislosti na daném místˇe a cˇ ase (viz obr. 2.2). Magnetický sever SM mˇení polohu vuˇ ˚ ci zemˇepisnému severu SZ po elipse. [18] U mapy pro orientaˇcní bˇeh ale vyžadujeme orientaci k magnetickému severu. Tedy po zhotovení mapy v S-JTSK je potˇreba pravoúhlou cˇ tvercovou sít’ souˇradnicového systému mapy natoˇcit. Jediným spolehlivým rˇ ešením, jak zjistit správný úhel, je vypravit se ho zmˇerˇ it pˇrímo do terénu. Vytipujte si na podkladu nˇejakou jasnou pˇrímou linii, silnici, prusek, ˚ pˇrípadnˇe dvojici 4
2.3. OCAD
Obrázek 2.2: Magnetický sever SM a zemˇepisný sever SZ
jasných navzájem viditelných bodu˚ (budov) zakreslených jasnˇe i na mapˇe. Nehodí se železnice, elektrické vedení a podobné magneticky podezˇrelé objekty. Zmˇerˇ te azimut této linie v terénu a ten naneste do mapy od této linie proti smˇeru hodinových ruˇciˇcek. Tím jste narýsovali smˇer na magnetický sever. Mˇerˇ ení opakujte vícekrát a i na více místech v terénu. Prumˇ ˚ erem zmˇerˇ ených smˇeru˚ získáte výsledný magnetický sever na svém podkladu (viz obr. 2.3). [15] Mapu natoˇcíme v programu OCAD pˇríkazem Rotate map z nástrojové nabídky Extras. Velikost úhlu zadáme ve stupních, pˇriˇcemž kladná hodnota natoˇcí data proti smˇeru hodinových ruˇciˇcek. Volbu Rotate symbols orientated to north odškrtneme, nebot’ symboly orientované k severu natáˇcet nechceme. Více o natoˇcení mapových podkladu˚ v [15].
2.3
OCAD
Sehnané mapové podklady v ruzných ˚ formátech cˇ ekají na zpracování v programu OCAD. Nejprve si však opatˇríme základní stavební kámen každé orientaˇcní mapy, mapový klíˇc ISOM 2000 (International Specification for Orienteering Maps) podle [1]. Jedná se o OCD soubor obsahující znaˇckový klíˇc se všemi pˇrípustnými symboly. Nalezneme ho v instalaˇcním adresáˇri programu OCAD v podadresáˇri Symbol pod názvem Orienteering Map 15 000.ocd. 5
2.3. OCAD
Obrázek 2.3: Mˇerˇ ení smˇeru na magnetický sever
2.3.1 Práce se symboly
Naˇctení mapového klíˇce ISOM 2000 provedeme pˇri vytváˇrení nového souboru zvolením Orienteering Map 15 000.ocd v nabídce Load symbols from po zvolení typu mapy Normal map. Mapové soubory pro verzi 8 i 9 jsou pˇripraveny v pˇríloze A (ocad8_15000.ocd, ocad9_15000.ocd). Aby bylo možné s jednotlivými vektorovými daty lépe pracovat je tˇreba, aby byla na sobˇe nezávislá. Toho v software OCAD docílíme pomocí symbolu˚ 1 . Symbol lze vytvoˇrit pˇríkazem New... z menu Symbol. Dále zvolíme typ symbolu, nastavíme cˇ íslo, popis, barvu, šíˇrku cˇ áry a nakonec vytvoˇríme ikonu symbolu (viz obr. 2.4). 6
2.3. OCAD
Obrázek 2.4: OCAD - Vytvoˇrení nového symbolu 2.3.2 Import DXF Podkladová polohopisná a výškopisná data máme pˇripravena ve formátu DXF. Stejnˇe tak i data poˇrízená pˇri terénním mˇerˇ ení získáme konverzí v tomto formátu. Vektorový formát DXF lze importovat do programu OCAD. Pro všechny druhy importu˚ slouží nabídka File Import... a vybrání pˇríslušného souboru na disku. Pˇri volbˇe souboru DXF se objeví nabídka Import DXF file (viz obr. 2.5). Pole DXF size udává informaci o rozsahu souˇradnic v DXF souboru. Další nabídka Offset se týká posunu stˇredu importovaných souˇradnic vuˇ ˚ ci poˇcátku souˇradnicového systému, který software OCAD používá 2 . Zde je také možné data natoˇcit o urˇcitý úhel (Angle), velikost úhlu se zadává ve stupních, pˇriˇcemž kladná hodnota natoˇcí data proti smˇeru hodinových ruˇciˇcek. Do položky Map scale se zadává mˇerˇ ítko vytváˇrené mapy. Pˇri importu prvního DXF souboru vytvoˇríme New offset (hodnoty se naˇctou automaticky z DXF souboru) a ostatní DXF soubory importujeme do již existujícího offsetu (volba Existing offset and angle). V nabídce Coordinates nastavíme jak mají být souˇradnice z DXF souboru in1. v jiných programech též známé jako vrstvy nebo hladiny. 2. standardní pracovní plocha pro OCAD má stˇred souˇradnic v (0,0). Vámi importovaná data mají souˇradnice v jiném souˇradnicovém systému (pˇredp. S-JTSK) kde se hodnoty v obou osách pohybují ve stovkách tisíc metru. ˚ Tedy jde o to nastavit stˇred pracovní plochy programu OCAD do stˇredu importovaného území.
7
2.3. OCAD
Obrázek 2.5: OCAD - Import vektorových dat DXF terpretovány. Volbu GIS (1 meter/unit) vybereme, pokud jsou data již v reálném souˇradnicovém systému (S-JTSK), kde 1 jednotka v DXF souboru odpovídá 1 metru ve skuteˇcnosti. V jiném pˇrípadˇe volíme Other, kde hodnotu odpovídající jedné jednotce nastavíme ruˇcnˇe v mm. CRT (Cross reference files) Duležitou ˚ funkcí importu DXF je možnost automaticky pˇriˇradit jednotlivým vektorovým objektum ˚ symboly z mapového klíˇce. K tomu slouží tlaˇcítko CRT... v nabídce importu DXF souboru. Jeho prostˇrednictvím naˇcteme soubor typu CRT obsahující vazby mezi vrstvou DXF souboru a OCAD symbolu (viz pˇríklad 2.3.1). Pˇri importu software OCAD každé vrstvˇe DXF souboru obsažené v CRT tabulce pˇriˇradí odpovídající symbol, tj. mapovou znaˇcku. 504.0 505.0 506.0 507.0
c1 c2 c3 c4
504.0 505.0 506.0 507.0
504 505 506 507
Silnicka Vozova cesta Pesi cesta Pesina
Pˇríklad 2.3.1: Ruzné ˚ struktury CRT souboru Pˇriˇrazení lze provést i po importu pˇríkazem Convert layers... z nástrojové lišty Extras. Musíme ale mít na pamˇeti, že program OCAD ve verzi 8 Standard zkrátí jména DXF vrstev 8
2.3. OCAD na 15 znaku. ˚ To znemožní pˇriˇrazení symbolu˚ po importu pomocí pˇripravené tabulky CRT pˇribližnˇe u dvou tˇretin symbolu˚ z mapového klíˇce ISOM 2000. Ve verzi 8 Standard proto pˇriˇrazení provádíme výhradnˇe pˇri importu. Vztahy mezi ISOM 2000 a tabulkami DBF, CRT a CNT Stejnˇe jako mapaˇr mapující klasickou metodou i mapaˇr používající moderní digitální metodu vychází z mapového klíˇce ISOM 2000. Ten nabývá pro konkrétní použití v ruzných ˚ aplikacích ruzných ˚ digitálních podob, tj. formátu. ˚ V software OCAD je reprezentován množinou symbolu˚ uložených ve formátu OCD. Na prvcích této množiny závisí koneˇcný vzhled mapy, proto z ní vycházíme pˇri dalším zpracování. Odlišnosti mezi normou ISOM 2000 a její implementací v software OCAD jsou popsány v souboru ocad_vs_isom.txt umístˇeném v pˇríloze A. Soubory CRT a CNT jsou si svým charakterem velice podobné. Oba slouží k automatickému pˇriˇrazení symbolu˚ importovaným datum ˚ v prostˇredí software OCAD. Soubor CRT urˇcuje vazby mezi vrstvami DXF formátu a OCD symboly, soubor CNT zase vazby mezi hodnotami atributových polí formátu SHP a OCD symboly. Pojítkem mezi klíˇcem ISOM 2000 integrovaným v programu OCAD a CRT (resp. CNT) formátem je databázový formát DBF. V tomto formátu jsem vytvoˇril soubor isom2000.dbf obsahující všechny použitelné mapové znaˇcky. Má následující strukturu. První sloupec tabulky (první pole databáze) oznacˇ ený názvem CISLO obsahuje kódové oznaˇcení symbolu v software OCAD (shodné s kódem mapové znaˇcky v ISOM 2000, napˇr. 205.0) a v druhém sloupci s názvem POPIS se nachází úplný název symbolu (napˇr. 205 Jeskyne 3 ) viz tabulka 2.1. CISLO 205.0 206.0
POPIS 205 Jeskyne 206 Balvan
Tabulka 2.1: Struktura vytvoˇreného DBF souboru isom2000.dbf Tento soubor je používán formuláˇrem pro sbˇer dat v software ArcPad (viz 3.1.1), zde se uplatní druhý sloupec. Oba sloupce jsou potˇreba v programu Úpravce DXF pˇri generování formátu˚ CRT a CNT z této DBF databáze (viz 3.2.2). Z výše uvedených vztahu˚ vyplývá, pokud dojde ke zmˇenˇe výchozí množiny OCD symbolu˚ (pˇridání nového symbolu), musí se stejná zmˇena provést i v databázi DBF. Aktuální soubory CRT a CNT jsou pak vygenerovány programem Úpravce DXF. Databáze DBF pro mapový klíˇc ISOM 2000 je pˇripravena v pˇríloze A (isom2000.dbf) i se soubory CRT (isom2000.crt) a CNT (isom2000.cnt). Pozn.: Import shapefile je popsán v 3.2.4. ˇ 3. Ceské názvy symbolu˚ jsou pˇrevzaty z pˇrekladu normy ISOM 2000 [1] a jsou psány bez diakritiky (viz 2.4.2)
9
2.3. OCAD 2.3.3 Naˇctení pˇredlohy Nyní naˇcteme rastrovou pˇredlohu jako šablonu. Existují dva zpusoby ˚ jak to provést. Naˇctení "obyˇcejného" rastrového obrázku nebo naˇctení rastru s lokalizaˇcním souborem (referencovaného rastru pˇripojeného do souˇradnicového systému (S-JTSK) korektnˇe. Klasické naˇctení pˇredlohy Tj. naˇctení rastrového obrázku bez lokalizaˇcního souboru. Pˇredloha se naˇcte doprostˇred pracovní plochy software OCAD, takže poloha naˇctení záleží na úrovni zvˇetšení, a poloze aktuálního výˇrezu. V nabídce Template zvolíme Open... a vybereme rastrový obrázek s pˇredlohou. Objeví se dialogové okno s nastavením parametru˚ otevírané pˇredlohy (viz obr. 2.8). V prvním boxu je informace o rozlišení obrázku. Pokud soubor tuto informaci neobsahuje je nutné nastavit v jakém rozlišení byl obrázek naskenován. Dále je zde možné nastavit mˇerˇ ítko pˇredlohy, úhel natoˇcení šablony a mˇerˇ ítko vytváˇrené mapy. Na tˇechto údajích záleží velikost a natoˇcení pˇredlohy pˇri naˇctení, pokud je neznáme mužeme ˚ rastr naˇcíst s implicitními hodnotami a vše pˇrenechat adjustaci pˇredlohy. Pozn.: Ve verzi OCAD 9 Professional se pˇredloha otevírá z nástrojové nabídky Background map.
Obrázek 2.6: OCAD - Adjustace pˇredlohy
Adjustace pˇredlohy Nesouhlasí-li rastr s vektorovými podklady, je ho zapotˇrebí pˇrizpusobit ˚ (adjustovat). K tomu je vhodné použít vektorový podklad polohopisu. Pˇred tímto krokem je vhodné vypnout zobrazení (hide) symbolu výškopisu k vˇetší pˇrehlednosti pˇri adjustaci. V rastrovém podkladˇe a v polohopise najdeme minimálnˇe tˇri shodné a zˇretelné body co nejdále od sebe, tvoˇrící konvexní obálku zájmového území. Volbou Template - Adjust (F9) urˇcíme tyto body nejprve na rastru a posléze v polohopise. Pˇri adjustaci se vyhnˇete okrajum ˚ lesních porostu˚ a 10
2.3. OCAD vysokých budov, mohou zkreslovat. Po dokonˇcení výbˇeru bodu˚ OCAD rastr natoˇcí a upraví mˇerˇ ítko tak, aby pˇriléhal na polohopis (viz obr. 2.6).
Obrázek 2.7: Afinní transformace [8] K tomu OCAD používá afinní transformaci. Afinní (polynomická prvního rˇ ádu) transformace v sobˇe zahrnuje tˇri základní operace - posunutí poˇcátku, otoˇcení souˇradnicových os o urˇcitý úhel a zmˇenu mˇerˇ ítka. Vychází pˇritom z pˇredpokladu, že koeficienty charakterizující tyto operace jsou konstantní v celé transformované oblasti. Afinní transformace zavádí odlišnou zmˇenu mˇerˇ ítka ve smˇeru osy x a y. Obrázek 2.7 ukazuje, jak tato transformace muže ˚ deformovat vstupní data. Je vidˇet že cˇ tverec se nám vuˇ ˚ ci poˇcátku souˇradnicového systému posunul a pootoˇcil. Navíc se ještˇe zvˇetšil a zkosil. Minimálnˇe jsou potˇreba 3 dvojice identických bodu. ˚ [8] Kvalitu provedené adjustace zkontrolujeme i na ostatních místech mapy. Pokud jiné body cˇ i linie v ortofotu nepˇriléhají k polohopisu opakujeme adjustaci s více body.
Naˇctení referencovaného rastru Druhou možností je naˇctení referencovaného rastru tj. naˇctení rastru s lokalizaˇcním souborem (jde o soubory typu jpw, tfw... tzv. worldfile). Situace je podobná jako pˇri práci s vektorovými daty. Soubor obsahuje souˇradnice daného území, tj. je dáno jeho umístˇení v sourˇ adnicovém systému, a také obsahuje informace o svém mˇerˇ ítku v obou osách (v m/pixel). Dialogová nabídka týkající se offsetu (viz obr. 2.8) je totožná s importem souboru˚ DXF a je popsána výše v 2.3.2. Po naˇctení se soubor zobrazí v mˇerˇ ítku mapy, správnˇe natoˇcen a na správném místˇe. Adjustace se tedy nemusí provádˇet. Tímto máme hotovou koneˇcnou podobu pˇredlohy, která v sobˇe obsahuje informace o polohopisu, výškopisu a pravoúhlém prumˇ ˚ etu terénu (ortofoto). Dostáváme tak ortofoto, které je velmi vhodným podkladem pro tvorbu map pro orientaˇcní bˇeh. 11
2.4. ARCPAD
Obrázek 2.8: OCAD - Naˇctení pˇredlohy
2.4
ArcPad
2.4.1 Pˇríprava pˇred mapováním Než vyrazíme s PDA mˇerˇ it do terénu je vhodné si pˇredem na PC pˇripravit potˇrebné soubory. Jedná se o soubor ArcPad Map (.apm) a shapefiles (.dbf, .prj, .shp, .shx) pro ukládání namˇerˇ ených dat. V programu ArcPad založíme novou mapu, v Table of Contents pro nastavení souˇradnicového systému klikneme na ikonu Choose Map Projection Definition File, vybereme cestu k souboru S-JTSK Krovak EastNorth.prj. Tento soubor s informacemi o projekci je souˇcástí pˇrílohy A. Postup výbˇeru definice souˇradnicového systému je zachycen na obrázku 2.9. Tím zajistíme, že data vstupující z GPS (vˇetšinou systém WGS84) budou programem automaticky transformována do systému S-JTSK. Více o práci s S-JTSK v software ArcPad 7 v [21] a [12]. Pˇri vytváˇrení nového shapefile vybereme z roletkového menu Type postupnˇe hodnoty Point, Polyline, Polygon. Program vyžaduje zadat alesponˇ jedno pole v atributové tabulce. 12
2.4. ARCPAD
Obrázek 2.9: ArcPad - Výbˇer definice souˇradnicového systému Tímto atributem budeme pˇri mapování rozlišovat jednotlivé zájmové objekty, zadáme napˇríklad TYP_PRVKU, TYP_LINIE a TYP_PLOCHY, pro pˇríslušný shapefile. Datový typ ponecháme Text s délkou 50 znaku. ˚ Potvrdíme tlaˇcítkem OK a zadáme cestu k uložení shapefile (viz obr. 2.10). Následující dotaz na vytvoˇrení formuláˇre QuickForm zamítneme, o formuláˇrích se zminuji ˇ v 2.4.2. [5] V Table of Contents se mužeme ˚ pˇresvˇedˇcit, že jsou vytvoˇrené shapefiles naˇctené a mají povolenou editaci. Zárovenˇ si mužeme ˚ naˇcíst pˇripravené pˇredlohy jako je ortofoto pro snazší orientaci v terénu. To se provede tlaˇcítkem Add Layer(s) a vybráním souboru v oknˇe Directory Browser (viz obr. 2.11). U ortofota musíme brát v úvahu menší výkonnost PDA a pˇri jeho pˇrípravˇe vˇenovat pozornost zvolení optimálního pomˇeru mezi pˇresností (rozlišení rastru) a zobrazovací nároˇcností pro PDA (velikost rastru). Je zapotˇrebí se také dopˇredu zamyslet nad výbˇerem atributu˚ pro vkládané prvky s ohledem na srozumitelnost a cˇ asovou nároˇcnost zadávání (závisí na konkrétním zaˇrízení PDA). Napˇr. není nutné zadávat celé názvy, místo "pˇeší cesta" postaˇcí ’c3’ - posloupnost cest od ’c1’ (silniˇcka) do ’c5’ (prusek). ˚ Této symbologie je zapotˇrebí se držet po celou dobu mapování, využije se pak pro automatické zpracování. Pokud použijeme pˇripravené formuláˇre, symbologii obstará databázový soubor DBF (viz 2.3.2) V pˇríloze A je pˇripraven mapový soubor ArcPad.apm a shapefiles pro body, linie i plochy. 2.4.2 Tvorba formuláˇru˚ pro sbˇer dat Ke sbˇeru dat je možné pˇristoupit dvˇema zpusoby. ˚ První je použít program ArcPad ve standardní, nezmˇenˇené podobˇe. A v druhém pˇrípadˇe mužeme ˚ drobnými úpravami dosáhnout zjednodušení práce pro konkrétní úˇcel, v našem pˇrípadˇe pro mapování mapy pro orientaˇcní 13
2.4. ARCPAD
Obrázek 2.10: ArcPad - Založení nového shapefile bˇeh. Vyjdeme z toho, že mapovaným objektum ˚ (mapovým znaˇckám) pˇriˇrazujeme atributy podle závazného mapového klíˇce ISOM 2000. Tato mezinárodní norma vstupuje v platnost dnem 1. 1. 2001, zcela nahrazuje stávající normu a pro všechny mapy pro orientaˇcní bˇeh vydané po tomto datu je závazná. Je zejména nepˇrípustné na závodních mapách používat znaˇcky, které nejsou v této normˇe obsaženy. —ISOM 2000 [1] Z citace vyplývá, že pˇri mapování vystaˇcíme s pˇredem danými mapovými znaˇckami. Mohou nastat pˇrípady, kdy potˇrebujeme pro vˇerné zachycení skuteˇcnosti symbol neobsažený v normˇe ISOM 2000, nebo naopak nˇekteré symboly definované v normˇe nejsou zavedeny v programu OCAD. O tom svˇedˇcí drobné rozpory mezi normou a její implementací v programu OCAD. Jako závaznou jsem vzal právˇe množinu symbolu˚ ze souboru Orienteering Map 15 000.ocd. Rozdíly jsem popsal v souboru ocad_vs_isom.txt obsaženém v pˇríloze A. Jako pˇríklad uvádím symbol nedefinovaný v normˇe - 526.1 Mala budova, ale obsažený v programu OCAD jako doplnˇek symbolu 526 Budova. Naším cílem je vytvoˇrení formuláˇre, který nám po zadání geometrie prvku umožní vybrat mapovou znaˇcku ze seznamu pˇrípustných hodnot a tuto hodnotu uložit do jeho atributové tabulky. 14
2.4. ARCPAD
Obrázek 2.11: ArcPad - Naˇctení vrstev Tvorbu formuláˇru˚ provedeme v programu ArcPad Application Builder od firmy ESRI [6]. Formuláˇr je asociován ke konkrétnímu shapefile, zapisuje se do stejnojmenného souboru s pˇríponou apl. Lze ho editovat i v textovém editoru. Pˇríkazy jsou psány jazykem ArcPad XML, pˇrípadné skripty v jazyce VBScript nebo JScript. Vytvoˇríme tˇri formuláˇre, každý pro jeden pˇripravený shapefile (body, linie, plochy). Obsahovˇe i funkˇcnˇe budou všechny tˇri formuláˇre stejné, omezím se na popis formuláˇre pro body.shp. Ze startovací nabídky programu ArcPad Application Builder (jinak též ArcPad Studio) zvolíme New layer definition project pro soubor body.shp ke konfiguraci souboru body.apl, který mimo jiné obsahuje informace o použitých formuláˇrích. V nˇekolika následujících krocích intuitivního pruvodce ˚ (Form Wizard) nastavíme rozmˇery formuláˇre podle typu výstupního zaˇrízení na 130x130px pro obrazovku 1/4 VGA 240x320 (Pocket PC) a poˇcet stránek formuláˇre ponecháme na jedné standardní (Page Tabs). Druhy a polohu ovládacích prvku˚ formuláˇre pro editaci (tzv. EDIT FORM) navolíme jednoduchým zpusobem ˚ výbˇerem z palety ovládacích prvku˚ (Control Palette) pomocí tažení myší. Pro naše úˇcely postaˇcí jeden prvek pro popis (Label) a jeden pro výbˇer s možností editace (ComboBox). Ve vlastnostech comboboxu na stránce General v položce Field urˇcíme název pole z atributové tabulky shapefile body.shp, do kterého se zvolená hodnota zapíše. V našem pˇrípadˇe máme jedinou volbu TYP_PRVKU. Proto zaškrtneme políˇcko Required, aby uživatel byl povinen tento jediný atribut vyplnit. V záložce List Values propojíme combobox se sloupcem z pˇredem vytvoˇrené databázové tabulky isom2000.dbf, která obsahuje mapové znaˇcky podle normy ISOM 2000 [1] s jejich cˇ íselným oznaˇcením (napˇr. 309 Neprekonatelna bazina). Názvy mapových znaˇcek v cˇ eském pˇrekladu normy obsahují cˇ eskou diakritiku. Sladit kódování souboru DBF, aby byl správnˇe interpretován v programech ArcPad i OCAD se mi nepodaˇrilo. Bez újmy na srozumitelnosti jsem proto použil názvy mapových znaˇcek bez diakritiky. Tvorba je znázornˇena na obrázku 2.12. Více o databázi DBF a mapovém klíˇci ISOM 2000 v 2.3.2. Použití formuláˇru˚ pˇri sbˇeru dat je popsáno v 3.1.1. [7] Se software ArcPad Application Builder lze pracovat pouze se zakoupenou licencí. Na 15
2.4. ARCPAD
Obrázek 2.12: ArcPad Studio - Tvorba formuláˇre druhou stranu soubory vytvoˇrené v tomto programu je možné editovat v textovém editoru. Se znalostí jazyka ArcPad XML se tedy obejdeme i bez tohoto komerˇcního programu. Napˇríklad budeme-li potˇrebovat jednou vytvoˇrený formuláˇr pro sbˇer dat propojit s jiným databázovým souborem DBF (pro pˇrípad použití jiného mapového klíˇce, napˇr. ISSOM2005), upravíme parametr listtable elementu COMBOBOX v souboru body.apl na hodnotu issom2005.dbf. Tím dosáhneme propojení formuláˇre souboru body.shp s tabulkou issom2005.dbf. Soubory apl pro body, linie a plochy s definicí formuláˇru˚ naleznete v pˇríloze A (body. apl, linie.apl, plochy.apl). Inspirací k vytvoˇrení formuláˇru˚ mi poskytla publikace [11] 2.4.3 Tvorba symbologie pro ArcPad Jak je patrné z obrázku 2.13, vizualizace dat bez použití symbologie je velice nepˇrehledná. ArcPad proto umožnuje ˇ prvkum ˚ pˇriˇradit ruzné ˚ symboly. Podle hodnot atributu˚ vybraného pole atributové tabulky program urˇcí zpusob ˚ zobrazení prvku. ˚ Použití symbologie nemˇení geometrii sebraných dat a výraznˇe nám pomáhá pˇri jejich sbˇeru. Symbologii je možné vytváˇret nˇekolika zpusoby. ˚ V programu ArcMap od firmy ESRI nám poslouží nástroj Symbol Property Editor, kde tvoˇríme symboly v grafickém prostˇredí s náhledem. Propojení se software ArcPad obstará funkce Get data for ArcPad7. Další možností pro tvorbu symbologie je využít pˇrímo programu ArcPad. Ve vlastnostech shapefile se nachází záložka Symbology, kde lze navolit jednoduché symboly pro data. Nechcemeli využít komerˇcní program ArcMap a nestaˇcí-li nám jednoduchá symbologie nastavitelná v programu ArcPad, zvolíme možnost vytváˇrení symbolu˚ v jazyce ArcPad XML. 16
2.4. ARCPAD
Obrázek 2.13: ArcPad - Význam symbologie Symbologii mapového klíˇce ISOM 2000 pro software ArcMap vytvoˇril ve své diplomové práci [13] Jakub Jirka. Vˇetšina složitˇejších symbolu, ˚ po pˇrevedení dat do formátu programu ArcPad, ale byla automaticky zjednodušena. Vygenerované soubory apl spolu s kapitolou ArcPad XML Reference nápovˇedy software ArcPad Application Builder [6] mi pomohly vytvoˇrit v jazyce ArcPad XML symboly pro každý prvek klíˇce ISOM 2000 vhodné pro program ArcPad. ArcPad zapisuje informace o symbologii do souboru˚ s pˇríponou apl, zmínˇených v 2.4.2 pˇri tvorbˇe formuláˇru. ˚ Jak je vidˇet z pˇríkladu 2.4.1 definice symbolu˚ je obalena tagem SYMBOLOGY. U elementu VALUEMAPRENDERER je duležitý ˚ parametr lookupfield, kterým urˇcíme pole atributové tabulky, jehož hodnoty chceme symbolizovat. Mezi tagy EXACT definujeme vzhled symbolu pro hodnotu urˇcenou v parametru value. V pˇríkladu je uveden symbol 409 PODROST: OBTIZNY BEH (viz obr. 2.14). Jedná se o plošný objekt skládající se z podkladové bílé plochy (není nutno definovat) vyplnˇenou svislými zelenými liniemi. 17
2.4. ARCPAD
Obrázek 2.14: ArcPad - Zobrazení symbologie - symbol 409 <SYMBOLOGY> <EXACT value="409 PODROST: OBTIZNY BEH" label="4090"> <SIMPLELINESYMBOL color="67,225,26" width="2"/> <EXACT> ...
Pˇríklad 2.4.1: Tvorba symbologie v ArcPad XML - symbol 409 Struktura je snadno patrná z ukázky. Složité symboly lze poskládat bohatými kombinacemi jednoduchých bodových, liniových a plošných symbolu. ˚ Pˇri definování vzhledu 113 symbolu˚ mapového klíˇce ISOM 2000 pro software ArcPad jsem musel akceptovat omezení daná jeho jednodušší symbologií. Úˇcelu použití symbologie to však zcela vyhovuje. Ukazuje to obrázek 2.13, který zachycuje nejprve data se standardní symbologií a se symbologií podle ISOM 2000 v programu ArcPAd. Pro srovnání je uveden i výsledný vzhled dat v programu OCAD. Soubory apl pro body, linie a plochy s definicí symbologie naleznete v pˇríloze A (body.apl, linie.apl, plochy.apl).
18
Kapitola 3
Terénní mapování a zpracování namˇerˇených dat V této fázi máme pˇripravený soubor programu OCAD s mapovým klíˇcem ISOM 2000, importovanými vektorovými podklady a naˇctenou pˇredlohou. Jsme hotovi s pˇrípravou souboru programu ArcPad, máme nastavený souˇradnicový systém, naˇctené shapefiles pro ukládání dat, nachystané formuláˇre pro zadávání atributu˚ a definovanou symbologii pro zobrazení namˇerˇ ených dat. Nezbývá nám nˇež terén zmapovat a ze sebraných dat zhotovit výslednou mapu.
3.1
Práce s ArcPad v terénu
3.1.1 Sbˇer dat Pro zajištˇení spojení PDA s GPS staˇcí v menu GPS v prostˇredí ArcPad zvolit položku GPS Activate. Ujistíme se, že v GPS Preferences v záložce GPS Datum je nastaven souˇradnicový systém, s kterým pracuje náš GPS pˇrijímaˇc (viz obr. 3.1). V našem pˇrípadˇe se jedná o WGS84. Otevˇreme pˇripravený soubor ArcPad.apm a mužeme ˚ mapovat. Na zaˇcátku je vhodné zvolit metodiku mapování, aby práce nebyla chaotická. Doporuˇcuji nejprve zmapováním sítˇe cest rozdˇelit zájmové území na menší celky a v nich se postupnˇe zabývat detaily. Je to ostatnˇe obdobný princip jako u klasické metody. viz [15]. Podrobný návod nastavení GPS v prostˇredí ArcPad naleznete v [21].
Obrázek 3.1: ArcPad - Nastavení GPS Anténa GPS musí být nošena nezakryta pro co nejlepší signál pˇrijímaˇce. Mnˇe osobnˇe se osvˇedˇcil zpusob ˚ externí antény pˇripevnˇené na kšiltu cˇ epice. Postup sbírání bodu˚ je následu19
3.1. PRÁCE S ARCPAD V TERÉNU jící - postavíme se s anténou na zájmové místo, v programu ArcPad zvolíme tlaˇcítko Capture Point, v následném oknˇe zadáme hodnotu atributu právˇe mapovaného bodu dle pˇredem urcˇ ené symbologie viz 2.4.1. Poté, co sebereme všechny body týkající se jednoho objektu (napˇr. zaˇcátek, lomové body, body kˇrížení a konec cesty), pˇrepneme se do režimu editace Polyline a spojením bodu˚ cestu nakreslíme a zadáme pˇríslušný atribut. Pro pˇresnˇejší a snadnˇejší práci zaškrtneme v Table of Contents v záložce Snapping políˇcko Vertex u vrstvy body.shp. Zapnuli jsme tzv. "snappování", neboli pˇrichytávání na uzlové body vrstvy body.shp. Nacházíli se bod této vrstvy od našeho kliknutí ve vzdálenosti menší než je nastavená hodnota Snapping Tolerance, program automaticky použije tento bod. Toho využijeme zejména pˇri vytváˇrení nových prvku˚ a editaci. Problém muže ˚ nastat, jsou-li dva body ve vzdálenosti menší než tato hodnota. Program pak preferuje pozdˇeji zadaný bod. V tomto pˇrípadˇe zmˇeníme hodnotu Snapping Tolerance v nabídce Map Properties. Obdobnˇe postupujeme i u polygonu. ˚ Sbˇer dat je znázornˇen na obrázku 3.2.
Obrázek 3.2: ArcPad - Sbˇer dat V pˇrípadˇe pˇrizpusobeného ˚ programu ArcPad nám formuláˇre zjednoduší práci se zadáváním atributu. ˚ Namísto standardního dialogu se objeví formuláˇr vytvoˇrený v kapitole 2.4.2, kde pouhým výbˇerem z nabízených hodnot atribut pˇriˇradíme (viz obr. 3.3). 3.1.2 Specifika digitálního sbˇeru dat Výše popsaným zpusobem ˚ je možné zmapovat celé zájmové území, mužeme ˚ však narazit na nˇekteré problémy. Nabízí se otázka jak rˇ ešit mapové znaˇcky, které nejsou dány jedním 20
3.1. PRÁCE S ARCPAD V TERÉNU
Obrázek 3.3: ArcPad - Upravený formuláˇr pro sbˇer dat symbolem, napˇr. zarostlá paseka, která se skládá ze symbolu paseky pˇrekryté znaˇckou podrostu. V takovém pˇrípadˇe jednoduše nakreslíme dva polygony pˇres sebe s odlišnou hodnotou atributu, pˇriˇcemž prvnˇe kreslíme spodní symbol, tedy paseku. Otázku jak nakreslit sráz, kamenný sráz, plot a podobné symboly, aby smˇer srázu nebo vnitˇrek plotu byl správnˇe orientován, rˇ eší tzv. princip okˇrídlené hrany. Linie má definovaný poˇcátek a konec a tím danou levou a pravou stranu. OCAD kreslí zmínˇené šrafy (napˇr. smˇer srázu, vnitˇrek plotu) na pravou stranu linie. Takže staˇcí pˇri sbˇeru dat v programu ArcPad zadat body linie v požadovaném poˇradí a OCAD pˇrekreslí symbol korektnˇe. Nˇekdy je výhodné nakreslit liniový symbol jako polygon, napˇríklad symboly znaˇcící ohraniˇcení ploch 301.1 Jezero: hraniˇcní linie, 416.0 Výrazná hranice porostu a jim podobné. OCAD dokáže zpracovat plošné shapefile s atributy liniových znaku˚ správnˇe. Problém muže ˚ nastat v symbologii v programu ArcPad, když pro objekt nebude definován vzhled symbolu a bude zobrazen šedou barvou. Nezapomeneme ani na pomocné body pro tvorbu linií a ploch, které pro výslednou mapu nevyužijeme. Aby nám po importu dat do programu OCAD a vykonání pˇriˇrazení nezbyly v mapˇe šedé body bez symbolu, musíme je vymazat. V software OCAD oznaˇcíme pomocí myši a klávesy SHIFT z panelu symbolu˚ všechny symboly. Z menu Symbol vybereme pˇríkaz Hide k vypnutí editace a viditelnosti symbolu. ˚ Následovnˇe zobrazíme veškerou kresbu bez symbolu˚ pˇríkazem Entire map, oznaˇcíme je nástrojem Edit object a vymažeme klávesou DELETE. Analogií k vypnutí provedeme zapnutí symbolu˚ pˇríkazem Normal. Dostáváme se k nevýhodám digitálního mapování. Datové modely GIS neumožnují ˇ kreslení kˇrivek a oblouku˚ a používají lomené cˇ áry. To znamená, že v pˇrípadˇe zaoblených pˇrírodních tvaru˚ musíme zhušt’ováním bodu˚ lomených cˇ ar vhodnˇe aproximovat oblouky. Pˇri dobré aproximaci lomenou cˇ arou lze s použitím nástroje To curve v software OCAD získat 21
3.1. PRÁCE S ARCPAD V TERÉNU oblouk cˇ i kružnici. ArcPad sice nabízí nakreslení polygonu pomocí kružnice a elipsy, ale ve skuteˇcnosti se jedná právˇe o aproximaci lomenými cˇ arami. Pˇri klasické metodˇe mapování je kreslení oblouku˚ a kružnic mnohem rychlejší, staˇcí zamˇerˇ it tˇri body, které definují oblouk, nebo prostˇe naˇcrtnout kˇrivku od oka. Pˇri pˇrekreslování v PC pak použít nástroj programu OCAD - Beziérovy kˇrivky, elipsy nebo kružnice. Pˇri mapování se setkáme i s pˇrípadem, kdy tvar linie kopíruje jinou linii, typickým pˇríkladem mužou ˚ být vodoteˇce na obou stranách cesty. Abychom nemuseli sbírat body pro každý prvek zvlášt’ využijeme v prostˇredí ArcPad nástroje Offset Polyline/Polygon, odsazení linie/plochy. Postup je následující - sebereme body pro první linii, nakreslíme ji, zapneme nástroj Offset Polyline/Polygon, nastavíme stranu a vzdálenost odsazení, nakreslíme linii znovu, ale zadáme již jiný atribut. Pˇri zadávání odsazení musíme brát v úvahu šíˇrku symbolu˚ na mapˇe pro dané objekty, aby nedošlo k jejich pˇrekrytí. Další duležitou ˚ pomuckou, ˚ kterou ArcPad nabízí je automatické opakování hodnot atributu˚ pˇri vkládání, skryté pod funkcí Repeat Attributes. Pˇri opakovaném kreslení prvku˚ stejného typu hodnota zadaná pro první prvek bude pˇriˇrazena i všem ostatním. Pˇrípadem objektu, ˚ se kterými si digitální metoda pˇrímo neporadí, jsou orientované bodové znaˇcky. OCAD umožnuje ˇ orientovat libovolný bodový symbol, ale jen u nˇekterých to má skuteˇcný smysl, napˇríklad u jeskynˇe (205.0), podlouhlé kupy (113.0), malého tunelu (518.1) pˇrechodu (525.0) a malé budovy (526.1). Pro nakreslení vyžadují zadat stˇred symbolu a také smˇer orientace, který ovšem ArcPad zajistit neumí. Problém lze rˇ ešit v programu OCAD ruˇcním natoˇcením symbolu, ˚ jelikož se nejedná o cˇ asto frekventované symboly.
Obrázek 3.4: ArcPad - Odsazení linie/polygonu Obrázek 3.5 ukazuje, že ArcPad je pˇripraven i na naše pˇrípadná pˇreklepnutí, zapome22
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC nutí, pˇrepsání a jiné omyly. Nejen k tomu slouží rozvinutelné menu Feature Properties z nástrojové lišty Edit, které se stane aktivním po vybrání prvku nástrojem Select. Užití stejnojmenného nástroje Feature Properties vyvolá okno s informacemi o atributech prvku a jdou zde rovnou i editovat. Dalšími nástroji Insert Vertices a Append Vertices je možné pˇridávat nové body linie a polygonu. Pomocí Move Feature lze posouvat jednotlivé lomové body prvku. A to bud’ na aktuální pozici GPS pˇrijímaˇce, na dané místo v souˇradnicích, nˇekolika druhy odsazení s rozliˇcným nastavením. Stejným nástrojem mužeme ˚ místo posunu vybraný bod smazat. Posun bodu˚ umožnuje ˇ i nástroj Select and Vertex Editing z jiného menu, Select, na stejné nástrojové lištˇe. Nakonec toto menu nabízí otoˇcení, zmˇenu mˇerˇ ítka, zmˇenu velikosti a vymazání celého prvku. Všechny akce se musí potvrdit tlaˇcítkem Commit Geometry Changes.
Obrázek 3.5: Editace dat
3.2
Zpracování sebraných dat v PC
Po pˇríchodu z terénu nejprve pˇrehrajeme z mobilního zaˇrízení potˇrebná data do poˇcítaˇce. Pˇrenos dat zajistí spojení kabelem, pamˇet’ovou kartou, pomocí bluethooth nebo jiné v závislosti na typu PDA. Do pˇredem pˇripraveného adresáˇre zkopírujeme všechny soubory týkající 23
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC se shapefile pro body, linie a plochy (soubory s pˇríponami .dbf, .prj, .shp, .shx). Je-li to zapotˇrebí provedeme úpravy sebraných dat na PC v programu ArcPad. 3.2.1 Konverze SHP do DXF Sebraná a upravená data máme pˇripravena ve formátu shapefile, který je potˇreba konvertovat do formátu software OCAD. Ten ve verzi Standard nepodporuje import formátu shapefile, proto data musíme pˇrevést do vektorového formátu DXF. Import DXF již verze Standard zvládá a zárovenˇ pˇri nˇem lze pˇriˇradit vrstvám správné symboly. Aby bylo možné data pˇri importu rozdˇelit do odpovídajících symbolu˚ (formát ocd), musí již být rozdˇelena do vrstev (formát DXF). Naše data ve formátu shapefile jsou rozlišena pomocí atributu˚ zadaných pˇri sbˇeru. Je potˇreba pomocí tˇechto atributu˚ data rozdˇelit do vrstev formátu DXF. (viz obrázek níže) Existuje nˇekolik speciálních nástroju˚ na konverzi zmínˇených formátu. ˚ Program Arcv2CAD od spoleˇcnosti Guthrie CAD/GIS Software Pty Ltd. () nabízí konverzi s klasifikací do vrstev podle atributu. ˚ Tento program ale není poskytován zdarma a ve zkušební verzi pˇrevádí jen shapefile omezené velikosti, proto je pro naše úˇcely nevhodný. Požadavky na volnˇe šiˇritelnou, samostatnˇe spustitelnou aplikaci splnuje ˇ software DXF Author od spoleˇcnosti ESRI () [3]. Program nedisponuje možností klasifikace do vrstev. Tento problém jsem vyˇrešil napsáním vlastního programu v programovacím jazyce Python, který se o klasifikaci postará, jak je naznaˇceno na obrázku 3.6
Obrázek 3.6: Zámˇena DXF vrstev DXF Author je velmi jednoduchý intuitivní program s jedinou položkou menu File ob24
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC sahující tˇri volby, naˇctení dat, konverzi dat a ukonˇcení programu. Zvolením první volby Load Data Set naˇcteme do programu pˇripravené shapefile pro body, linie a plochy. Nacˇ íst lze vždy jen jeden soubor, konverzi tedy provedeme pro každý shapefile samostatnˇe. Volbou Convert to DXF File se spustí pruvodce ˚ konverzí, kde ve tˇrech krocích nastavíme, co požadujeme exportovat. V pˇrípadˇe exportu geometrie ponecháme nastavené implicitní hodnoty beze zmˇeny. Klíˇcový je pro nás export textových popisku. ˚ Program je totiž dokáže vytvoˇrit z atributu˚ v námi zvoleném poli atributové tabulky našeho shapefile. V cˇ ásti dialogového okna Text Field proto zvolíme název zadaný pˇri vytváˇrení shapefile v programu ArcPad (TYP_PRVKU, TYP_LINIE nebo TYP_PLOCHY). Textové popisky nám poslouží pro další zpracování výsledného DXF souboru. Poslední nabízenou možností exportu jsou datové bloky (Data Blocks), ty však nevyužijeme, proto zaškrtneme položku Skip Data Blocks k vynechání tohoto kroku. Na závˇer zvolíme jméno a umístˇení výchozího souboru. 3.2.2 Tvorba vlastního programu v jazyce Python Jak již bylo rˇ eˇceno, DXF Author nezajistí rozˇclenˇení objektu˚ do vrstev DXF formátu na základˇe atributu˚ formátu SHP zadaných pˇri sbˇeru dat. Proto bylo nutné vytvoˇrit program, který úpravou výstupních souboru˚ rozˇclenˇení provede. Program jsem napsal v jazyce Python ve verzi 2.5 (final) a nazval ho Úpravce DXF. Formát DXF je textový (ASCII - American Standard Code for Information Interchange) soubor editovatelný v libovolném textovém editoru, jeho struktura je pevnˇe dána a je dobˇre strojovˇe zpracovatelná. Jednotlivé grafické objekty jsou od sebe odlišitelné, mají na pˇredepsaném místˇe urˇcené jméno vrstvy a obsahují informace o svém textovém popisku. Tˇechto vlastností a puvodu ˚ textových popisku˚ jsem využil k úpravám vedoucím k rozˇclenˇení grafických prvku˚ do vrstev podle atributu˚ zadaných pˇri sbˇeru dat. Vyšel jsem ze znalosti struktury souboru vygenerovaného programem DXF Author pˇri dodržení mnou popsaného postupu konverze (viz 3.2.1). V programovacím jazyce Python jsem napsal program, který vytvoˇrený DXF soubor upraví do požadovaného výstupu. Program v grafickém uživatelském prostˇredí naˇcítá tˇri DXF soubory (body, linie, plochy) a jeden DBF soubor (definice mapového klíˇce, napˇr. ISOM 2000). Program postupnˇe prochází naˇctený DXF soubor, vyhledává jména textových popisku, ˚ kontroluje, zda jsou hodnoty obsaženy v naˇctené DBF tabulce, provádí zámˇenu jména vrstvy grafického prvku za jméno textového popisku, maže celý blok informací o textovém popisku a vytváˇrí nový DXF soubor, který je pˇripraven k importu do programu OCAD. Princip je naznaˇcen na obrázku 3.6. Umožnuje ˇ nezávisle na konverzi vygenerovat z DBF souboru pˇriˇrazovací soubory CRT a CNT, je tak zajištˇena integrita dat v databázi mapového klíˇce. Pˇriblížím klíˇcová místa zdrojového kódu, který je rozdˇelen tématicky do tˇrí souboru. ˚ Soubor uprav.py obsahuje funkce pro zpracování souboru˚ DXF, dbf.py funkce pro nacˇ tení a pˇrevod souboru DBF a soubory.py tˇrídu definující grafické uživatelské rozhraní (GUI - Graphical User Interface). Soubor uprav.py: Každý rˇ ádek DXF souboru je naˇcten do datové promˇenné soubor typu seznam (list). Operací index() nalezneme v seznamu index prvku s urˇcitou hodno25
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC tou. Pro zaˇcátek definic grafických objektu˚ vyhledáme element ENTITIES soubor.index( "ENTITIES"). Dva rˇ ádky níže se nalézá element urˇcující typ grafického objektu (dále klícˇ ové slovo - POINT pro body, POLYLINE pro linie a plochy). Definice objektu konˇcí výskytem dalšího klíˇcového slova. Vždy dva rˇ ádky pod klíˇcovým slovem je jméno vrstvy objektu (promˇenná v_index). pravda = True while pravda: pravda = soubor[soubor.index("TEXT")+14] != ’ENDSEC’ t_index = soubor.index("TEXT")+12 soubor[0]=(soubor[t_index]) del soubor[t_index-12:t_index+2] v_index = t_index-10 vystup = open(nazevVystup,"a") for i in xrange(0,v_index): vystup.write(soubor[i]+’\n’) vystup.close() del soubor[0:v_index]
Pˇríklad 3.2.1: Zámˇena DXF vrstev Od prvního objektu až do konce souboru (element ENDSEC) program vyhledává index textového popisku (promˇenná t_index). Provádí zámˇenu hodnot na pozici indexu jména vrstvy objektu a indexu textového popisku. Textový blok zaˇcíná elementem TEXT, popisek je o 12 rˇ ádku˚ níže (t_index = soubor.index("TEXT")+12). Po zámˇenˇe program smaže položky týkající se textového bloku del soubor[t_index-12:t_index+2], aby se v programu OCAD nezobrazovaly. Dva rˇ ádky pod popiskem se nachází další klíˇcové slovo v_index = t_index-10 (smazáním 12 položek seznamu se relativní vzdálenost +2 rˇ ádky zmˇenila na vzdálenost -10 rˇ ádku). ˚ Již zpracovaný kód (rozsah xrange(0,v_index) ) program zapíše do výstupního souboru (vystup.write(soubor[i]+’\n’)) a smaže ze seznamu (del soubor[0:v_index]). Celý proces se v cyklu opakuje dokud se nezpracuje celý soubor. Viz ukázka zdrojového kódu 3.2.1. nazevPole = [’TYP_PRVKU’,’TYP_LINIE’,’TYP_PLOCHY’] for i in xrange(1,len(souborDBF)): podminkaCRT="" for j in xrange(1,3): podminkaCRT+=souborDBF[i].split(";")[j].strip()+" " vystupCRT.write(podminkaCRT+’\n’) for k in xrange(0,3): vystupCNT.write("%s %s LIKE ’%s’%s" % (souborDBF[i].split(";")[1] .strip(),nazevPole[k],souborDBF[i].split(";")[2].strip(),’\n’))
Pˇríklad 3.2.2: Vytváˇrení podmínek pro CRT a CNT soubory Soubor dbf.py: Pro zpracování DBF souboru program Úpravce DXF využívá dávko26
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC vou konverzní utilitu DBF2TXT od autora Pavla Šrubaˇre [20]. DBF soubor, který je vytvoˇren podle zásad popsaných v kapitole 2.3.2, pˇrevedeme programem DBF2TXT na textový soubor, kde jednotlivé sloupce tabulky jsou oddˇeleny speciálním znakem (stˇredníkem ;). Soubor naˇcteme do seznamu rˇ ádku˚ (promˇenná souborDBF) a každý rˇ ádek rozdˇelíme na seznam bunˇek pomocí operací s rˇ etˇezci a seznamy v jazyce Python. Jednotlivé bunky ˇ dostaneme pˇríkazem souborDBF[i].split(";")[j].strip(), kde i znaˇcí rˇ ádek a j sloupec. Vímeli, že v prvním sloupci je cˇ íslo symbolu používané v software OCAD a ve sloupci druhém název odpovídajícího atributu zadaného do souboru SHP pˇri sbˇeru dat, není problém vytvorˇ it konverzní tabulky CRT a CNT (viz pˇríklad 3.2.2). Pro sestavení podmínek souboru CNT je tˇreba znát jména polí atributové tabulky daného shapefile (FIELD). V programu pˇredpokládám názvy doporuˇcované v pˇri vytváˇrení nových shapefile v 2.4.1. Z názvu˚ symbolu˚ nelze rozpoznat zda je symbol urˇcen pro bodové, liniové nebo plošné prvky. Proto je každá podmínka napsána pro všechny tˇri názvy polí. OCAD si s tím poradí a pˇriˇrazení probˇehne správnˇe. def otevri1(self): self.vstup1.delete(0,END) self.vstup1.insert(0,tkFileDialog.askopenfilename(title=’Vyberte DXF soubor’, initialdir=os.path, filetypes = [(’Soubory DXF’, ’dxf’)]))
Pˇríklad 3.2.3: Funkce pro naˇctení souboru v dialogovém oknˇe Soubor soubory.py: O komunikaci s uživatelem se stará grafické uživatelské rozhraní vytvoˇrené pomocí sady nástroju˚ Tkinter standardnˇe integrované v jazyce Python. Dominantou okna programu jsou cˇ tyˇri ovládací prvky Entry pro zapsání absolutní nebo relativní cesty k vstupním souborum. ˚ Vedle každého ze vstupu˚ se nachází tlaˇcítko (Button) vyvolávající dialogové okno pro interaktivní naˇctení požadovaného typu souboru, viz pˇríklad 3.2.3. Další ovládací prvky Button volají funkce rˇ ídící chod programu. Tlaˇcítko s popisem Uprav DXF volá metodu nactiVstup(), která pˇreˇcte zadané vstupní hodnoty a zavolá metodu upravDXF k úpravám DXF souboru popisovaným výše, bUprav = Button ( lfVstupyDXF,text=u"Uprav DXF",command=self.nactiVstup). Tlaˇcítko Generuj CRT a CNT zase volá metodu generuj(), která pˇrevede naˇctený soubor DBF do souboru˚ CRT a CNT. Program dále disponuje tlaˇcítky Nápovˇeda a Konec se zˇrejmým významem. Popis a rozložení ovládacích prvku˚ upravují objekty typu Label, FrameLabel, Frame. Samotné rozmístˇení a vykreslení všech prvku˚ jsem pˇrenechal správci rozložení - metodˇe pack() viz obr. 3.7. [9] Okomentované zdrojové kódy všech souboru˚ programu Úpravce DXF (soubory.py, uprav.py, dbf.py) jsou k dispozici v pˇríloze A. Aby bylo možné spouštˇet program Úpravce DXF bez nutnosti instalování interpreta jazyka Python, vytvoˇril jsem spustitelný EXE soubor pomocí modulu py2exe, který je k dispozici na URL () [10] a cˇ eského návodu na stránkách [22]. Adresáˇr obsahující EXE soubor (upravce. exe) je souˇcástí pˇrílohy A. 27
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC
Obrázek 3.7: Úpravce DXF
3.2.3 Použití programu Úpravce DXF Program se nachází na pˇriloženém CD v adresáˇri ../Pˇrílohy/Úpravce DXF. Je spustitelný bez nutnosti instalace souborem upravce.exe. Po spuštˇení se objeví okno GUI s pˇrednastavenými vstupními hodnotami, které jsou samy o sobˇe intuitivní nápovˇedou, kam který soubor naˇcíst (viz obr. 3.7). Jedná se o relativní cesty smˇerˇ ující do adresáˇre, ve kterém se nachází soubor upravce.exe, zmˇenit je mužeme ˚ ruˇcním vstupem z klávesnice nebo tlaˇcítkem ... pomocí dialogového okna. Program disponuje tˇremi poli pro vstup DXF souboru, ˚ pokud nˇekteré z nich nehodláme využít, vymažeme jeho implicitní text. Cesta k DBF souboru se naˇcte obdobným zpusobem. ˚ V dusledku ˚ použití externího programu DBF2TXT název DBF souboru nesmí obsahovat cˇ eskou diakritiku. Úpravu DXF souboru˚ lze provést i pokud není naˇctena žádná DBF tabulka, program na tuto skuteˇcnost upozorní. Pokud tabulka naˇctena je, program nalezne jména vrstev, které se v tabulce nenacházejí. Muže ˚ se jednat o nové symboly vytvoˇrené uživatelem, nebo o špatnˇe zadané hodnoty. Program tato jména vypíše do textového souboru. Úpravu DXF souboru˚ spustíme tlaˇcítkem Uprav DXF. Výstupní soubory program vytvoˇrí na stejném místˇe jako se nacházejí vstupní soubory a k jejich názvu pˇripojí koncovku _vystup (napˇr. body_vystup.dxf). Konverze DBF souboru na formáty CRT a CNT vyžaduje pouze uvedení cesty k souboru DBF, není vyžadován vstup souboru˚ DXF. Konverze se vykoná stisknutím tlaˇcítka Generuj CRT a CNT pro oba formáty najednou. Výstupní soubory vzniknou opˇet ve stejném adresáˇri jako soubor vstupní a budou se odlišovat pouze pˇríponou (napˇr. isom2000.crt, isom2000.cnt). 28
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC
Obrázek 3.8: Úpravce DXF - Informativní a chybové hlášky Program je vybaven nˇekolika informativními hláškami, které ve formˇe zprávy vypíše na obrazovku, jak v pˇrípadˇe úspˇešného vykonání programu, tak v pˇrípadˇe, že nastala chyba. Ošetˇreny jsou chyby typu špatnˇe zadané cesty ke vstupním souborum, ˚ nesprávného typu vstupního souboru, neodpovídající struktury DXF souboru a neexistence souboru (viz obr. 3.8). Konverze DXF do OCD je popsána v kapitole 2 v sekci 2.3.2. 504.0 505.0 506.0 507.0
TYP_LINIE TYP_LINIE TYP_LINIE TYP_LINIE
LIKE LIKE LIKE LIKE
’c1’ ’c2’ ’c3’ ’c4’
504.0 505.0 506.0 507.0
TYP_LINIE TYP_LINIE TYP_LINIE TYP_LINIE
LIKE LIKE LIKE LIKE
’504 ’505 ’506 ’507
Silnicka’ Vozova cesta’ Pesi cesta’ Pesina’
Pˇríklad 3.2.4: Ruzné ˚ struktury CNT souboru
3.2.4 Import SHP OCAD ve verzi Professional podporuje pˇrímo import souboru˚ shapefile, konverze do formátu DXF není tedy nutná. V software OCAD otevˇreme naší pˇripravenou mapu s podklady, z menu File zvolíme nabídku Multiple file import..., najdeme cestu ke zkopírovaným shapefile, vybereme všechny najednou a zvolíme otevˇrít. V dialogovém oknˇe Import Shape File ponecháme zaškrtnuto Existing offset and angle a necháme OCAD vytvoˇrit si pole pro unikátní klíˇc. Ujistíme se, že jsou zvoleny správné jednotky (Units, pro souˇradnice v S-JTSK za29
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC dáme metry). Po importu prvky nemají pˇriˇrazený žádný symbol a jsou zobrazovány šedou barvou. Využijeme tedy zadaných hodnot atributu˚ každého prvku k pˇriˇrazení pˇríslušných symbolu. ˚ K tomu slouží pˇríkaz Assing Symbols z menu Database. V následujícím dialogovém oknˇe u položky Dataset zaškrtneme volbu All pro pˇriˇrazování prvku˚ zárovenˇ ze všech shapefile. Nyní je nutné vytvoˇrit podmínky pˇriˇrazování. To je bud’ možné pˇrímo zde pod volbou Add v cˇ ásti Condition, nebo pˇríkazem Load... z cˇ ásti CNT file nahrát vytvorˇ ené podmínky z CNT souboru. Jedná se o textový soubor uložený s pˇríponou .cnt, kde na každé rˇ ádce je jedna podmínka (viz pˇríklad 3.2.4). Syntaxe slovy: cˇ íslo z množiny symbolu˚ v programu OCAD, název pole z atributové tabulky shapefile, klíˇcové slovo LIKE a v apostrofech napsaná pˇríslušná hodnota. Tedy symbologii používanou po dobu mapování pˇrepíšeme podle této syntaxe do podmínek a uložíme do CNT souboru. Na závˇer tlaˇcítkem Execute spustíme proces pˇriˇrazení symbolu˚ a z šedé zmˇeti cˇ ar OCAD pomocí atributu˚ vytvoˇrí témˇerˇ hotovou mapu (viz obr. 3.9).
Obrázek 3.9: Pˇriˇrazení symbolu˚ pomocí atributu˚
30
3.2. ZPRACOVÁNÍ SEBRANÝCH DAT V PC 3.2.5 Specifika digitálního zpracování dat Po dokonˇcení importu dat zkontrolujeme správnost pˇriˇrazení všech symbolu˚ na mapˇe, jestli vše dostalo správný symbol a jestli nejsou nˇekteré objekty bez symbolu. Dále se zamˇerˇ íme na návaznosti, kˇrížení, pˇrekrývání symbolu. ˚ S úpravami tˇechto chyb nám již pomuže ˚ OCAD sám. Ruznými ˚ editovacími nástroji, které jsou tu k dispozici, provedeme prodloužení, zkrácení, kartografický odsun a jiné prvky generalizace k dosažení výsledné, kartograficky správné mapy. Více o práci s programem OCAD v [15]. Duležité ˚ je zvládnout problém aktualizace. Vyhnout se vzniku duplicitních dat pˇri vícedenním pracovním procesu s aktualizací po každém mapování s následným kartografickým cˇ ištˇením dat. Jde o to, abychom po dalším návratu z lesa neimportovali již jednou zpracovaná data. Jako dobré se osvˇedˇcilo rˇ ešení rozdˇelit si zájmové území na sekce a po tˇechto jednotlivých cˇ ástech data zpracovávat. Ke každé sekci založíme vlastní shapefile a pro umožnˇení spoleˇcného zobrazení v jednom dokumentu je mezi sebou odlišíme názvem, napˇríklad body_sekce1, body_sekce2, .... Po dokonˇcení jedné sekce provedeme import pˇríslušných dat a bˇehem mapování další sekce v terénu je mužeme ˚ v kanceláˇri zpracovávat. Duraznˇ ˚ e doporuˇcuji z poˇcátku veškerá zdrojová data zálohovat. Nejlépe po každém kroku konverze a v pˇrípadˇe chyb se vrátit k této záloze, než si celý postup patˇriˇcnˇe osvojíte. Vyhnete se tak nechtˇeným chybám vedoucím v krajním pˇrípadˇe k poškození namˇerˇ ených dat. Pozor si dejte pokud provádíte editaci shapefiles, jestli je nemáte naˇctené ve více programech najednou. Napˇríklad máte naˇctený shapefile v programu DXF Author a pokoušíte se opravit špatnˇe zadaný atribut v software ArcPad. Nedostanete žádnou chybovou hlášku, ale atributy u plošných objektu˚ nepujdou ˚ zmˇenit. Podobné tˇežko identifikovatelné chyby muže ˚ vyvolat i naˇcítání shapefiles v programu OCAD ve chvíli, kdy jsou používány jinou aplikací.
31
Kapitola 4
Možnosti šíˇrení digitální mapy V situaci, kdy jsme hotovi s posledními úpravami vytváˇrené mapy, stojíme pˇred otázkou, jakým zpusobem ˚ se o mapu podˇelit s ostatními. Formát OCD není dostupný uživatelum ˚ bez programu OCAD, proto OCAD nabízí export do celé rˇ ady rastrových i vektorových formátu. ˚ V závislosti na formátu jsou k dispozici ruzná ˚ nastavení exportu, verze 9 Professional tato nastavení rozšiˇruje, stejnˇe jako nabídku formátu. ˚
4.1
Rastrové formáty
Základním stavebním kamenem rastrového obrázku je bunka ˇ zvaná pixel. Každý pixel obsahuje informaci o jedné barvˇe. Bunky ˇ (pixely) uspoˇrádané do pravidelné mˇrížky tvoˇrí celý obraz. Kvalita rastrové grafiky závisí na hustotˇe pixelu˚ tj. na rozlišení. Jednotkou rozlišení je dpi (dots per inch, poˇcet bodu˚ na palec). Každý pixel má pˇresnˇe dané souˇradnice v rámci celého obrazu, pro georeferencování rastrové mapy tedy staˇcí definovat souˇradnice poˇcáteˇcního bodu, velikost bunky ˇ a poˇcet bunˇek ve smˇeru osy Y a X. U všech rastrových formátu˚ se pˇri exportu OCAD dotazuje na rozlišení výsledného rastru. Optimální k pomˇeru velikosti na disku a kvalitˇe zobrazení se jeví hodnota 300 dpi. Dalšími spoleˇcnými možnostmi exportu rastrových obrázku˚ jsou funkce Anti-Aliasing a Color correction. Anti-Aliasing je metoda k vyhlazení hran linií a textu. ˚ Funkce Color correction zajistí zavedení stejných barevných oprav jako pro zobrazení na obrazovce. Na každém monitoru barvy vypadají jinak než skuteˇcné barvy pˇri tisku. Nastavením barevných oprav docílíme shody barev na obrazovce s barvami pˇri tisku. Barevné korekce se nastavují v programu OCAD pod volbou Options - Color correction. [16] [19] OCAD provádí export do formátu˚ BMP, GIF, JPEG a TIFF. U formátu TIFF navíc umožnuje ˇ vytvoˇrit georeferencovaný rastr, kde místo rozlišení v dpi nastavujeme velikost pixelu v metrech. Na výbˇer máme i druh komprese a nastavení barevné hloubky. OCAD Standard nabízí LZW kompresi a pˇrepnutí na cˇ ernobílou barevnou hloubku. OCAD Professional pˇridává CCITT a Fax G4 komprese pro 1-bitové barevné hloubky a CMYK, 256 barev, odstíny šedi a polotónový rastr. [16] [19] Export ve verzi OCAD Professional je rozšíˇren o definování oblasti, která se má exportovat (Partial map) a o možnost rozdˇelit výstupní soubor na tzv. dlaždice (tiles), tj. na více menších souboru. ˚ Verze Standard u rastrových formátu˚ poskytuje tyto funkce pouze u formátu TIFF. [16] 32
4.2. VEKTOROVÉ FORMÁTY
4.2
Vektorové formáty
Vektorová reprezentace grafiky je založena na jednotlivých matematicky definovaných základních objektech - bodech, liniích a polygonech, kterými lze reprezentovat složitˇejší typy objektu˚ použitím topologických vztahu. ˚ Každý objekt má svuj ˚ identifikátor, pomocí kterého lze objektu pˇriˇrazovat atributy. Použití vektoru˚ dovoluje libovolnˇe mˇenit mˇerˇ ítko bez ztráty kvality. OCAD 8 Standard exportuje do vektorových formátu˚ AI (Adobe Illustrator) a DXF, verze 9 Professional navíc zvládá formáty Shapefile a SVG (Scalable Vector Graphics). AI (Adobe Illustrator) Nastavení exportu tohoto komerˇcního vektorového grafického formátu je zjednodušeno na výbˇer druhu tiskových barev. A to bud’ technologii CMYK nebo pˇrímé barvy (spot colors). O této problematice pojednává Zdenˇek Lenhart na stránkách [15]. Verze 9 Professional umožnuje ˇ definovat výˇrez z aktuální mapy a zadat mˇerˇ ítko exportované mapy. [16] DXF Analogií k importu popisovaném v 2.3.2 získáme z naší mapy DXF soubor. Na rozdíl od formátu AI se nezachovává vzhled symbolu, ˚ ale výsledkem je pouze cˇ árová vektorová kresba. SHP (Shapefile) S formátem shapefile lze pracovat jen ve verzi Professional. Objekty k exportu vybereme podle typu (body, linie, plochy, text) nebo podle datové množiny (dataset), v pˇrípadˇe pˇredchozího importu shapefile. Formátu SHP se prolíná celou prací, import je popsán v 3.2.4. SVG (Scalable Vector Graphics) Vektorový formát SVG popisuje dvourozmˇernou vektorovou grafiku pomocí XML tagu. ˚ Export mapy do formátu SVG zvládne pouze OCAD ve verzi 9 Professional. Rychlost zobrazování a pˇrekreslování grafiky záleží na velikosti SVG souboru. Ta není závislá od velikosti grafiky, ale od její složitosti. Mapa pro orientaˇcní bˇeh je zajisté grafikou složitou, proto je vhodné z nabídky exportu vyžádat binární uložení SVG souboru. Ztratíme sice možnost grafiku pˇrímo upravovat v textovém editoru, ale ušetˇríme místo na disku.
4.3
Speciální formáty
PDF (Portable Document Format) a EPS (Encapsulated Post Script) Pˇríbuzné formáty PDF a EPS mohou obsahovat rastrovou i vektorovou grafiku dohromady. Jejich výhodou je, že jsou nezávislé na výstupním zaˇrízení. Dokument vypadá stejnˇe na mo33
4.3. SPECIÁLNÍ FORMÁTY nitoru i po vytištˇení na tiskárnˇe. OCAD 8 Standard si poradí pouze s formátem EPS, PDF umí pouze verze 9 Professional. Nastavení exportu PDF i EPS kombinuje volby rastrových a vektorových formátu. ˚ Mužeme ˚ volit druh tiskových barev, rozlišení, mˇerˇ ítko, výˇrez z aktuální mapy a u formátu PDF i kompresi. [16] [19] OCAD Script V programu OCAD 9 Professional se proces exportu OCD souboru dá zautomatizovat pomocí skriptu v jazyce XML OCAD Script. To je zejména užiteˇcné pˇri cˇ asto opakovaném exportu mapy nebo pˇri exportu do nˇekolika formátu˚ najednou. Celý proces se spouští pˇríkazem Export with script... z nástrojové nabídky File. Syntaxe jazyka XML OCAD Script s vysvˇetlení parametru˚ se nachází na stránkách programu [16]. Škála nabízených formátu˚ je široká a to i v nižší verzi 8 Standard. Naše mapa se proto muže ˚ snadno dostat k mnoha uživatelum ˚ nezávisle na konkrétním software. OIM (OCAD Internet Map) Pro úˇcel publikace mapy na internetu je urˇcena volba OCAD Internet map. Program vygeneruje HTML soubor obsahující Java applet, který se stará o zobrazení mapy. V možnostech exportu urˇcíme poˇcet úrovní zvˇetšení a nastavíme rozlišení nejpodrobnˇejší úrovnˇe. OCAD vytvoˇrí tzv. pohledové pyramidy, tj. více rastru˚ s odstupnovaným ˇ rozlišením a velikostí. Pohledové pyramidy urychlují naˇcítání objemných rastru. ˚ Stejný úˇcel má i rozdˇelení celé mapy na již zminované ˇ dlaždice (tiles) v 4.1. Java applet pracuje s rastrovým formátem GIF. Internetová mapa ve verzi 8 Standard je postavena právˇe na Java appletu. Ve volbách exportu nastavujeme jeho velikost v pixelech v rámci HTML stránky. O ovládání mapy se stará jediné tlaˇcítko Zoom Out, které provádí zmenšování pohledu na mapu, zvˇetšování zajišt’uje levé tlaˇcítko myši. Bohatší nabídku má pˇripravenou verze 9 Professional. Mimo Java appletu˚ podporuje technologie Flash a SVG. Internetová mapa ve formátu Flash staví na stejném principu pohledových pyramid a dlaždic jako u Java appletu, jen namísto formátu GIF využívá formát JPG. U OIM ve formátu SVG je vytvoˇren jeden SVG soubor, který muže ˚ být na pˇrání komprimovaný. Vzhled všech tˇrí OIM je oproti verzi 8 Standard vylepšen o náhledovou mapu a tlaˇcítka pro zmˇenu mˇerˇ ítka. [16] [19]
34
Kapitola 5
Závˇer 5.1
Porovnání klasických a moderních metod tvorby mapy
Nové technologie nám dávají nové možnosti i v oblasti tvorby map. Digitální mapování s GPS v kombinaci s PDA je toho pˇríkladem. Jako u každé novinky je tˇreba zvážit co nám pˇrinese co usnadní a co naopak zkomplikuje, tedy duvody ˚ proˇc opustit stávající zavedenou metodu a postupnˇe pˇrejít na tu novou. V pˇrípadˇe digitální metody oproti klasické jsou výhodami pˇredevším rychlost a jednoduchost mapováni v terénu, dále minimální úpravy namˇerˇ ených dat v kanceláˇri, vyvarování se chyb z pˇrekreslování, menší nároky na zkušenosti mapaˇre a slibná budoucnost vývoje v této oblasti. Ovšem jsou zde i hlasy proti. Napˇríklad finanˇcní nároˇcnost na vybavení a svoji rozhodující roli muže ˚ hrát i faktor závislosti na zdroji energie pro GPS pˇrijímaˇc a PDA. Otázkou zustává ˚ i dobrá dostupnost signálu z družic ve všech místech mapování a s tím spojená pˇresnost mˇerˇ ení. Nejvˇetší pˇrínos má digitální metoda pro cˇ lovˇeka bez zkušeností s mapováním map pro orientaˇcní bˇeh. Z vlastní zkušenosti tvorby mapy klasickou metodou to mohu potvrdit. Nezkušený mapaˇr se u klasické metody snadno dopustí chyby v azimutu, v krokování nebo v odhadu. Nejvíce cˇ asu mu pak zabere zjišt’ování pˇríˇcin proˇc se mu kresba rozchází, kde se stala chyba. Z pozorování cˇ innosti zkušeného mapaˇre vˇerˇ ím, že klasická metoda dokáže být v terénu rychlejší. Zkušený mapaˇr má metodu zažitou, neváhá a pracuje bez hrubých chyb. Díky odhadu vzdáleností nemusí ani fyzicky navštívit veškeré významné body mapovaných objektu, ˚ což je u digitální metody nezbytné. U digitální metody je nutným pˇredpokladem pro zadávání atributu˚ seznámení se s názvy a kódy alesponˇ tˇech nejpoužívanˇejších symbolu˚ mapového klíˇce ISOM 2000. Naproti tomu u klasické metody si mapaˇr vystaˇcí s 5 barvami a vlastní symbologií. Hlavní nedostatek klasické metody se projeví pˇri pˇrevodu namˇerˇ ených dat do digitální podoby. Jedná se o zdlouhavý proces vektorizace naskenovaného mˇerˇ ického náˇcrtu. Doba zpracování se muže ˚ ještˇe výraznˇeji protáhnout pokud mapu kreslí jiná osoba než mapaˇr sám. Pak lehce dojde k nesprávné interpretaci nakreslených symbolu˚ nebo nepochopení vepsaných poznámek. Pˇrekreslování tvoˇrí tˇretinu až cˇ tvrtinu celkového cˇ asu stráveného mapováním v závislosti na zkušenostech mapaˇre. U digitální metody tyto problémy odpadají tím, že data již digitální jsou. Provést konverzi formátu˚ a automatické pˇriˇrazení symbolu˚ je i pro poˇcítaˇcového laika otázka nˇekolika minut. To je výraznˇe ménˇe cˇ asu než u klasické metody, kde se pˇrekreslování pohybuje spíše 35
5.2. POUŽITÉ TECHNOLOGIE v rˇ ádu hodin. Tím se ztráta digitální metody z terénu snižuje. Pˇri srovnávání cˇ asu˚ musíme vˇetší váhu pˇrisoudit cˇ asu strávenému v terénu, který je závislý na vnˇejších podmínkách a proto vzácnˇejší.
5.2
Použité technologie
V bakaláˇrské práci jsem pracoval s celou rˇ adou technologií. Text dokumentace jsem napsal v jazyce DocBook, který patˇrí do rodiny jazyku˚ SGML/XML [14]. Pro transformaci formátu DocBook do formátu PDF jsem upotˇrebil modul xslt2 [17]. Hlavní tˇežištˇe práce stojí na programech OCAD [16] [19] a ArcPad [2] [4] [5]. Ke konverzím jsem využil programy DXF Author [3] a DBF2TXT [20]. Doplnky ˇ k software ArcPad jsem vytváˇrel v programu ArcPad Application Builder [6] [7] a v jazyce ArcPad XML [6]. V rámci práce jsem vytvoˇril program Úpravce DXF v programovacím jazyce Python [9] [22], jeho spustitelnou EXE verzi užitím modulu py2exe [10].
36
Seznam použitých zdroju˚ a literatury ˇ [1] BEDNARÍK, Libor, et al. Mezinárodní norma Mapy pro orientaˇcní bˇeh. Praha: ˇ Mapová rada CSOB. 2000. [citováno 2007-03-11]. Dostupné z URL: . 2.3, 3, 2.4.2, 2.4.2 [2] ESRI Virtual Campus. Working with ArcPad 7. [online]. Redlands: ESRI. 2006. [citováno 2006-10-15]. Dostupné z URL: . 5.2 [3] ESRI office in Danvers. DXF Author. [poˇcítaˇcový program]. Danvers: MassGIS. 1999. [citováno 2006-11-11]. Dostupné z URL: . 3.2.1, 5.2 [4] ESRI. ArcPad. [poˇcítaˇcový program]. Ver. 7. Redlands: ESRI. 2005. [citováno 2006-0828]. Dostupné z URL: <www.esri.com/arcpad>. 1.2.1, 5.2 [5] ESRI. ArcGIS 9: Using ArcPad. Redlands: ESRI. 2005. 2.4.1, 5.2 [6] ESRI. ArcPad Application Builder. [poˇcítaˇcový program]. Ver. 7. Redlands: ESRI. 2005. [citováno 2007-01-23]. Dostupné z URL: . 2.4.2, 2.4.3, 5.2 [7] ESRI. ArcGIS 9: Getting Started with ArcPad Application Builder. Redlands: ESRI. 2005. 2.4.2, 5.2 ˇ Plzen. [8] FAJT, Jaromír. Geometrické transformace v GIS. Plzen: ˇ ZCU ˇ 2005. [citováno 2005-09-22]. Dostupné z URL: . 2.7, 2.3.3 [9] GAULD, Alan. Learn to Program Using Python: A Tutorial for Hobbyists, SelfStarters, and All Who Want to Learn the Art of Computer Programming. [online]. Pˇreložil Petr Pˇrikryl. Boston: Addison Wesley. 2000. [citováno 2007-01-15]. Dostupné z URL: . 3.2.2, 5.2 [10] HELLER, Thomas - RETZLAFF, Jimmy - HAMMOND, Mark. Modul py2exe. [poˇcítacˇ ový program]. Ver. 0.6.6. [USA]: SourceForge. 2006. [citováno 2007-02-06]. Dostupné z URL: . 3.2.2, 5.2 [11] HENDRICKS, Michael. Rapid Orienteering Map Creation with ArcPad and ArcGIS. Orono: The University of Maine. 2003. [citováno 2007-01-15]. Dostupné z URL: . 2.4.2 ˇ [12] JEDLICKA, Karel. Tipy a triky pro ArcPad. ArcRevue. 2004. Roˇc. 13, cˇ .1, s. 17-19. [citováno 2006-08-28]. Dostupné z URL: . 2.4.1 37
[13] JIRKA, Jakub. Využití mapy pro orientaˇcní bˇeh jako datového zdroje pro geoˇ Plzen. grafické informaˇcní systémy. Plzen: ˇ ZCU ˇ 2004. [citováno 2007-04-17]. Dostupné z URL: . 2.4.3 [14] KOSEK, Jiˇrí. DocBook: Struˇcný úvod do tvorby a zpracování dokumentu. ˚ [s.n.]. 2003. [citováno 2005-09-22]. Dostupné z URL: . 5.2 [15] LENHART, Zdenˇek, et al. Tvorba map pro orientaˇcní bˇeh. Vizovice : SHOCart. 2000. [citováno 2005-09-22]. Dostupné z URL: . 2.2.2, 3.1.1, 3.2.5, 4.2 [16] OCAD AG. OCAD. [poˇcítaˇcový program]. Ver. 9 Professional. Baar (Switzerland): OCAD AG. 2005. [citováno 2006-04-10]. Dostupné z URL: . 1.2.1, 4.1, 4.2, 4.3, 4.3, 4.3, 5.2 ˇ Jan. Modul xslt2. [poˇcítaˇcový program]. Ver. 2.6.5. Brno: Masarykova uni[17] PAVLOVIC, verzita. 2006. [citováno 2007-03-30]. Dostupné z URL: . 5.2 ˇ [18] RATIBORSKÝ, Jan. Geodézie 10. Praha: Vydavatelství CVUT. 2000. 2.2.1, 2.2.2 [19] STEINEGGER, Hans. OCAD. [poˇcítaˇcový program]. Ver. 8 Standard. Baar (Switzerland): Steinegger Software. 2002. [citováno 2005-09-22]. Dostupné z URL: . 1.2.1, 4.1, 4.3, 4.3, 5.2 ˇ Pavel. DBF2TXT. [poˇcítaˇcový program]. Ver. 2.10. Vítkov: Vit$oft. 2006. [ci[20] ŠRUBAR, továno 2007-03-22]. Dostupné z URL: . 3.2.2, 5.2 [21] URBAN, Petr. ArcPad 7 a S-JTSK. ArcRevue. 2006. Roˇc. 15, cˇ .2, s. 28. [citováno 2006-0828]. Dostupné z URL: . 2.4.1, 3.1.1 [22] ZAGAMMA Labs. PyCZ: Programovací jazyk Python. [online]. 2006. [citováno 200701-15]. Dostupné z URL: . 3.2.2, 5.2
38
Pˇríloha A
Pˇriložené soubory Adresáˇrová struktura pˇriloženého disku CD: •
dokumentace bakaláˇrské práce (silhavy.pdf, silhavy.xml)
•
adresáˇrová struktura CD (struktura_CD.html)
A RC PAD • • • • • • •
mapový soubor (ArcPad.apm) shapefile pro body (body.dbf, body.prj, body.shp, body.shx) shapefile pro linie (linie.dbf, linie.prj, linie.shp, linie.shx) shapefile pro plochy (plochy.dbf, plochy.prj, plochy.shp, plochy.shx) definice formuláˇru˚ a symbologie pro sbˇer dat (body.apl, linie.apl, plochy.apl) databáze mapových znaˇcek ISOM 2000 (isom2000.dbf) definice souˇradnicového systému S-JTSK (S-JTSK Krovak EastNorth.prj)
OCAD •
mapový soubor pro verzi 8 (ocad8_15000.ocd)
•
mapový soubor pro verzi 9 (ocad9_15000.ocd)
•
konverzní tabulky (isom2000.crt, isom2000.cnt)
•
odlišnosti mezi znaˇckovým klíˇcem OCAD a normou ISOM 2000 (ocad_vs_isom. txt)
Ú PRAVCE DXF •
okomentovaný zdrojový kód (soubory.py, uprav.py, dbf.py)
•
spustitelný EXE soubor (upravce.exe)
•
text GNU Lesser General Public License (lgpl.txt)
P OUŽITÉ ZDROJE A LITERATURA •
programy (DBF2TXT, DXF Author)
•
literatura (BEDNARIK.pdf, HENDRICKS.pdf, JEDLICKA.pdf, JIRKA.pdf, KOSEK. pdf, LENHART.zip, URBAN.pdf)
39