ZÁPADOČESKÁ UNIVERZITA V PLZNI Fakulta aplikovaných věd Katedra matematiky DIPLOMOVÁ PRÁCE Využití SVG pro kartografické znázornění charakteristik dopravy Plzeň, 2005 Kateřina Zabilková
Zadání DP (vložený list) 2
Prohlášení Předkládám tímto k posouzení a následné obhajobě diplomovou práci, zpracovanou na závěr studia na Fakultě aplikovaných věd Západočeské univerzity v Plzni. Prohlašuji, že jsem tuto diplomovou práci vypracovala samostatně, s použitím odborné literatury a pramenů, uvedených v seznamu, který je součástí diplomové práce. V Plzni dne 27. května 2005... podpis 3
Poděkování Děkuji vedoucímu diplomové práce, Ing. Mgr. Otakaru Čerbovi, za metodické vedení, připomínky a rady při zpracování diplomové práce. Rovněž děkuji pracovníkům Správy veřejného statku města Plzně za poskytnutí dat. Dále také děkuji celé své rodině, především rodičům, za psychickou a finanční podporu, kterou mi po celá studia věnovali. 4
Abstrakt Diplomová práce se zabývá využitím vektorového formátu SVG při znázorňování dopravních charakteristik. Možnosti využití formátu jsou testovány při tvorbě kartodiagramů ve čtyřech různých editorech. Důležitou součástí práce je porovnání použitých editorů. V závěru práce je zhodnocen přínos formátu SVG v oblasti tvorby kartodiagramů. Klíčová slova vektorový formát, SVG, digitální kartografie, kartodiagramy, doprava Abstract The diploma thesis deals with the use of SVG for the cartographic representation of transport characteristics. The possibilites of the format usage are tested by creating cartodiagrams in four different editors. The comparison of used editors is an important part of this diploma thesis. The positives of the format SVG in the area of cartodiagram creation are analysed in the conclusion. Keywords vector format, SVG, digital cartography, cartodiagrams, transport 5
OBSAH OBSAH... 6 SEZNAM OBRÁZKŮ... 8 SEZNAM TABULEK... 9 SEZNAM POUŽITÝCH ZKRATEK... 10 1. ÚVOD... 11 1.1. Motivace... 11 1.2. Cíl DP... 11 1.3. Sběr a popis dat... 12 2. SILNIČNÍ DOPRAVA V PLZNI... 15 2.1. Historie dopravy na Plzeňsku... 15 2.2. Dopravní vybavení Plzně... 15 2.3. Dálnice D5 a obchvat Plzně... 16 2.4. Vliv dopravy na obyvatelstvo... 17 3. KARTOGRAFICKÉ VYJADŘOVACÍ PROSTŘEDKY... 18 3.1. Tematické mapy... 18 3.2. Klasifikace metod jazyka mapy... 19 3.2.1. Kartodiagramy bodové... 24 3.2.2. Kartodiagramy liniové... 26 4. DIGITÁLNÍ KARTOGRAFIE... 28 4.1. Srovnání analogové a digitální kartografie... 28 4.2. Dělení digitálních map... 29 4.3. Prezentace dat... 30 4.3.1. Rastrová prezentace dat... 31 4.3.2. Vektorová prezentace dat... 32 5. SVG... 34 5.1. Vznik a vývoj SVG... 35 5.2. SVG dokument... 36 5.2.1. Styly... 37 5.2.2. Jednotky... 37 5.2.3. Barvy, výplně... 38 6
5.2.4. Transformace... 38 5.2.5. Grafické animace... 39 5.2.6. Text... 39 5.2.7. Křivky a cesty... 40 5.3. Editory pro tvorbu SVG dokumentu... 44 5.3.1. TextPad... 45 5.3.2. jedit... 46 5.3.3. Sketsa... 47 5.3.4. Sodipodi... 48 5.4. Postup při tvorbě map... 49 5.5. Porovnání vlastností editorů... 58 5.6. Zhodnocení využití SVG... 64 5.7. Komentář k vytvořeným mapám... 66 5.8. Prohlížeče a SVG... 67 5.9. Zajímavé odkazy... 68 6. ZÁVĚR... 70 SEZNAM POUŽITÝCH ZDROJŮ... 72 PŘÍLOHY... 75 Příloha 1 - Data pro tvorbu map... 76 Příloha 2 - Mapy vytvořené v editoru TextPad... 80 Příloha 3 - Mapy vytvořené v editoru jedit... 88 Příloha 4 - Mapy vytvořené v editoru Sketsa... 96 Příloha 5 - Mapy vytvořené v editoru Sodipodi... 103 Příloha 6 - Struktura přiloženého CD... 110 7
SEZNAM OBRÁZKŮ Obr. 1.01 Rozmístění křižovatek... 13 Obr. 3.01 Jednoduché diagramy... 21 Obr. 3.02 Složené diagramy... 21 Obr. 3.03 Součtový diagram... 22 Obr. 3.04 Strukturní diagram... 22 Obr. 3.05 Výsečový diagram... 23 Obr. 3.06 Srovnávací diagram... 23 Obr. 3.07 Dynamický diagram... 23 Obr. 3.08 Směrový diagram... 24 Obr. 3.09 Hvězdicovitý diagram... 24 Obr. 5.01 Element rect... 41 Obr. 5.02 Element circle... 41 Obr. 5.03 Element line... 42 Obr. 5.04 Element polyline... 42 Obr. 5.05 Element polygon... 43 Obr. 5.06 Element path... 44 Obr. 5.07 Editor TextPad... 46 Obr. 5.08 Editor jedit... 47 Obr. 5.09 Editor Sketsa... 48 Obr. 5.10 Editor Sodipodi... 49 Obr. 5.11 Rastrová mapa Plzně... 50 Obr. 5.12 Vektorová mapa Plzně... 51 Obr. 5.13 Liniové prvky element line... 53 Obr. 5.14 Liniové prvky element rect... 53 Obr. 5.15 Bodové prvky element rect... 54 Obr. 5.16 Bodové prvky element path... 55 Obr. 5.17 Bodové prvky element line... 55 Obr. 5.18 Textové prvky element text... 56 Obr. 5.19 Tvorba legendy... 56 Obr. 5.20 Tvorba směrovky... 57 Obr. 5.21 Použití atributu viewbox... 57 8
SEZNAM TABULEK Tab. 1.1 Přehled zájmových křižovatek v Plzni... 14 Tab. 2.1 Údaje o obyvatelstvu a rozloze města Plzně 31.12.2003 (podle SVSMP)... 16 Tab. 2.2 Délky pozemních komunikací v Plzni 31.12.2003 (podle SVSMP)... 16 Tab. 2.3 Automobilizace a motorizace Plzně 31.12.2003 (podle SVSMP)... 16 Tab. 4.1 Srovnání analogové a digitální kartografie... 28 Tab. 5.1 Srovnání vlastností editorů... 58 Tab. 5.2 Velikost kódů vytvořených map... 62 Tab. 5.3 Parametry hodnocení... 64 Tab. 5.4 Vhodnost SVG pro kartodiagramy... 65 9
SEZNAM POUŽITÝCH ZKRATEK ASCII American Standart Code for Information Interchange CD Compact Disc CSS - Cascading Style Sheets DOM Dokument Object Model DTD - Document Type Definition DVD Digital Versatile/Video Disc GIS GeoInformační Systémy HTML - HyperText Markup Language HW HardWare ICA - International Cartographic Association ICC - International Color Consorcium JPEG Joint Photography Expert Group PDA - Personal Digital Assistant PGML - Precision Graphics Markup Language PNG Portable Network Graphics RGB Red Green Blue RGBA - Red Green Blue Alfa SHP - SHaPefile SRGB Standatd Red Green Blue SVG - Scalable Vector Graphics SVGZ - Scalable Vector Graphics Zip SVSMP - Správa Veřejného Statku Města Plzně SW SoftWare TIFF Tag Image File Format UTF-8 UnicodeTransformation Format na 8 bitech VML - Vector Markup Language VMS - Virtual Memory System W3C - World Wide Web Consortium WYSIWYG - What You See Is What You Get XHTML - extensible HyperText Markup Language XML - Extensible Markup Language XSLT - extensible Stylesheet Language ZABAGED Základní Báze Geografických Dat 10
1. ÚVOD 1.1. Motivace Dnes se v digitální kartografii můžeme setkat s rastrovým nebo s vektorovým grafickým formátem. Většina grafických formátů je bohužel vázána na jeden typ software, který je často finančně náročný. Vzhledem k faktu, že práce s vektorovým formátem je mnohem přesnější, a v případě potřeby je převod na rastr poměrně snadnou záležitostí, jsem se rozhodla ve své práci vyzkoušet možnosti vektorového formátu, který není vázán na konkrétní software ani není finančně náročný. Formát SVG (Scalable Vector Graphics) je vektorový otevřený formát určený především pro distribuci vektorových dat v prostředí Internetu. Vzhledem k širokým možnostem, které SVG poskytuje, se jeho využití předpokládá i v oblasti kartografie a geografie. 1.2. Cíl DP Cílem této diplomové práce je zhodnotit, zda se vektorový grafický formát SVG hodí pro kartografické znázorňování dopravních charakteristik (tj. vhodnost formátu SVG pro tvorbu některých typů kartodiagramů). Hodnocení provedu na základě práce ve čtyřech různých editorech (dva editory textové a dva editory grafické). Práci ve více editorech jsem zvolila proto, abych při hodnocení SVG nebyla ovlivněna případnými nedostatky editoru. Vedle využití formátu SVG také zhodnotím jednotlivé editory (co který z nich umožňuje, nebo naopak neumí). Jelikož se Západočeská univerzita nachází v Plzni, budou se dopravní analýzy týkat města Plzně. Porovnám data z roku 2003 a roku 2004, tedy data před a po otevření dálničního obchvatu Plzně. Dopravní charakteristiky, které budu zobrazovat jsou: intenzita dopravy, týdenní variace, změny v letech. 11
1.3. Sběr a popis dat Data, která budu zpracovávat, jsem získala od Správy veřejného statku města Plzně úsek koncepce a dopravního inženýrství. Jedná se o data ze třinácti plzeňských křižovatek z týdne 20.9.-26.9.2003 a z týdne 20.9.-26.9.2004. Jde tedy o stejné křižovatky ve srovnatelném týdnu před a po otevření provizorního dálničního obchvatu. V práci jsem několikrát použita data z tzv. průměrného dne, tím myslím průměrný den z týdne 20.-26.9. (tj. průměrný den ze dní pondělí, úterý,... až neděle). Pro každou křižovatku je k dispozici počet automobilů na vjezdu do křižovatky v každém možném směru (konkrétně pro křižovatku typu T jsou data ze tří různých směrů) v hodinových časových intervalech (pro každý den tedy 24 intervalů). Křižovatek je celkem třináct. Jejich výběr ovlivnila dvě kritéria: 1. Byly voleny tak, aby pokryly vjezdy/výjezdy do Plzně ve směru velkých měst a také střed města. 2. Byly voleny tak, aby jejich data byla ze strany SVSMP k dispozici. Rozmístění jednotlivých křižovatek je dobře vidět na obr. 1.01. V následující tabulce jsou grafické informace doplněny popisem. 12
Obr. 1.01 Rozmístění křižovatek 13
Tab. 1.1 Přehled zájmových křižovatek v Plzni Číslo křižovatky podle SVSMP Pracovní číslo křižovatky Poloha křižovatky (v jakém směru leží, nebo zda je ve středu města) 101 1 střed města 120 2 střed města 129 3 střed města 133 4 střed města 201 5 Domažlice 202 6 Rozvadov 301 7 střed města 305 8 střed města 320 9 Most 347 10 Karlovy Vary 439 11 Praha 501 12 České Budějovice 604 13 Klatovy 14
2. SILNIČNÍ DOPRAVA V PLZNI 2.1. Historie dopravy na Plzeňsku Tato kapitola je zpracována podle [Mir1994]. Nejstaršími dopravními cestami, které spojovaly Plzeň s ostatními sídly, byly stezky pro pěší. Jednalo se převážně o vymýcené pruhy v lesích, bez úpravy podkladu. K Plzni, ležící v kotlině, vedly cesty při vodních tocích. Řeky byly překonávány v místech brodů (přes Berounku přímo v Plzni, Mži v Městě Touškově, Radbuzu v Liticích, Úhlavu v Černicích a Úslavu ve Starém Plzenci). Plzeň byla již ve 13. století významnou dopravní křižovatkou, byla napojena na zemské stezky směřující za hranice. Předpokládá se, že od Klatov vedla k Plzni Německá stezka. Dále do Plzně směřovala Řezenská stezka od Domažlic a odbočka Královské stezky od Teplé. Od 18. století se budovala silniční dálková spojení po komunikacích se zpevněným povrchem, tzv. císařské tereziánské silnice. Plzní procházela Říšská (Bavorská) silnice, jedna z nejstarších v Českých zemích. Dokončena byla v roce 1822, a byla spojnicí s Prahou. Dále tudy vedla Norimberská silnice (z roku1831) ve směru do Rozvadova. Plzní procházela Bavorsko Saská silnice směřující ze Železné Rudy do Teplic a Rakousko Saská silnice vedoucí do jižních Čech. Dále zde vedla ještě Loketská a Chebská silnice. Z uvedené silniční sítě je zřejmé, že se Plzeň stala významným dopravním uzlem středoevropských silničních tahů. 2.2. Dopravní vybavení Plzně Informace o dopravě ve městě jsou Správou veřejného statku města Plzně (SVSMP) pravidelně publikovány již od roku 1997 formou ročenky. Souvislý sled 15
informací spolu s dalšími údaji o dopravě umožňuje posuzovat změny dopravního systému jako celku. K získání přehledu uvádím tyto vybrané údaje o Plzni ke dni 31.12.2003: Tab. 2.1 Údaje o obyvatelstvu a rozloze města Plzně 31.12.2003 (podle SVSMP) Rozloha města 137,7 km 2 Počet obyvatel 166 118 Tab. 2.2 Délky pozemních komunikací v Plzni 31.12.2003 (podle SVSMP) Silnice 1. třídy 43,4 km Silnice 2. třídy Silnice 3. třídy Místní komunikace Celkem 28,0 km 56,2 km 407,7 km 535,3 km Tab. 2.3 Automobilizace a motorizace Plzně 31.12.2003 (podle SVSMP) Počet osobních automobilů 67 320 Počet nákladních automobilů 4 794 Počet motocyklů 6 232 Celkem motorových vozidel 111 570 2.3. Dálnice D5 a obchvat Plzně O dálnici D5 (z Prahy do Rozvadova) se uvažovalo již v roce 1939, kdy se měla dálnice propojit s plánovanou dálnicí na území Německa. Schválena byla usnesením vlády Československé socialistické republiky v dubnu 1963, jako součást základní sítě dálnic. Stavební práce začaly v roce 1976 mostem v Berouně. 15. prosince 2003 byl zprovozněn obchvat Plzně v provizorní podobě. V celém rozsahu má být dokončen v polovině roku 2006. V té době dojde k úplnému 16
propojení dálnice D5 z Prahy na Rozvadov. Do té doby bude automobilová doprava v úseku Útušice Černice (cca 5 km) vedena po krajské silnici II/180. 2.4. Vliv dopravy na obyvatelstvo Vedením hlavních silničních tahů středem města ze všech směrů, přichází automobilová doprava do kontaktu s obyvateli i návštěvníky města. Vedení veškeré dopravy městem odpovídá povaze dálničního provozu. Negativní účinky zvýrazňuje poloha města v kotlině. Škodliviny z dopravy vytvářejí značnou koncentraci v centrálních částech města, kde se pohybuje většina obyvatel. Hlukovou hladinu zintenzivňují nekvalitní povrchy vozovek, absence mimoúrovňového křižování komunikací a zvukových bariér. Pro chodce je největším problémem přecházení vozovek, absence podchodů v nejexponovanějších místech. Také nedostatečná šíře chodníků neumožňuje plynulý pohyb chodců. Chybí rozsáhlejší pěší zóny a trasy pro cyklisty. Komplexní působení otravných plynů z dopravy, nadměrný hluk i vibrace, střetávání chodců s automobilovou dopravou, poruchy v plynulosti dopravního proudu, jsou pro obyvatele Plzně značnou psychickou zátěží. 17
3. KARTOGRAFICKÉ VYJADŘOVACÍ PROSTŘEDKY Třetí kapitola je zpracovaná především podle [Vož2001] a [Vev2001]. Klasifikace tematických map a vyjadřovacích prostředků se u různých autorů liší, proto je možné, že se čtenář setkal s jiným členěním, než je zde uvedeno. 3.1. Tematické mapy Podle Mezinárodní kartografické asociace ICA (1973) je tematická mapa definována jako mapa, jejíž hlavním obsahem je znázornění libovolných přírodních a socioekonomických jevů (objektů a procesů), ale také jejich vzájemných vztahů. Tematické mapy se velice liší od map topografických. Vyznačují se vysokou mírou abstrakce a geometrické schematičnosti. V oblasti tvorby tematických map nedošlo ke standardizaci a unifikaci výrazových prostředků jazyka mapy. Proto je nutné se při čtení těchto map napřed seznámit s legendou mapy. Na tematických mapách se prezentují především netopografické objekty a jevy, tj. takové, které nelze naměřit pomocí geodetických metod. Pro rozvoj tematických map má velký význam rozvoj informatiky. Tematická mapa je tím lepší, čím snadněji se čtou její znaky a čím srozumitelnější je její jazyk. Vyjadřovací jazyk musí být srozumitelný nejen autorovi, ale mnohem širšímu okruhu uživatelů. Je dobré si uvědomit, že mapu budou používat osoby s vadami zraku, specifickým barvocitem a různou úrovní znalostí tématu. Z toho plynou vysoké požadavky na přehlednost a srozumitelnost tematické mapy: téma mapy musí být v názvu jednoznačně, stručně a jasně formulované, legenda mapy musí být dostatečně srozumitelná, tzn. snadno zapamatovatelná a logicky uspořádaná, kartografické provedení musí být co nejjednodušší a technicky 18
realizovatelné dostupnými prostředky, není vhodné vykreslovat do mapy příliš mnoho objektů a jevů, protože to zhoršuje její čitelnost, znaky a barvy musí být snadno rozlišitelné. Nesmí se používat prostředky vedoucí k nesrozumitelnosti ani prostředky málo odlišné, výsledky geografického výzkumu musí být jasně a jednoznačně znázorněny, aby nedošlo k nesprávné interpretaci vyjádřeného obsahu. 3.2. Klasifikace metod jazyka mapy Prioritním hlediskem při tvorbě tematických map je snaha o komplexní zobrazení charakteristik mapovaného jevu, jeho struktury, kvality, kvantity, významu a vzájemných vazeb. Podrobně je tento problém zpracován ve [Vev2001] a [Vož2001]. Data jsem získala od SVSMP, jde o absolutní hodnoty. Pro znázorňování absolutních hodnot jevu jsou vhodné metody: kartodiagramů, teček, izolinií. Zaměřím se proto na metodu kartodiagramů, ta mi připadá pro znázornění získaných dat vhodná. Pro znázorňování relativních hodnot jevu se používají: metoda teček, kartogramy, nebo dasymetrická metoda. Kartodiagram je mapa s dílčími územními celky, do kterých jsou diagramy znázorněna statistická data (absolutní hodnoty), většinou geografického charakteru. [Kaň1999] Kartodiagramy (diagramové mapy) jsou používány pro prezentaci statistických údajů. Většinou znázorňují hodnoty v absolutní podobě. Výjimku tvoří strukturní kartodiagramy, kde jsou hodnoty znázorněny v procentuálním zastoupení. Kromě diagramů se v mapě mohou vyskytovat i další objekty (hranice, vodstvo, komunikace, atd.). Tyto objekty jsou většinou potlačeny, aby nebyla zastíněna informace o kvantitě zobrazovaného jevu. Pro svojí jednoduchost a přehlednost se 19
staly kartodiagramy často používanou kartografickou pomůckou nejen mezi kartografy, ale i mezi pracovníky jiných oborů, kteří zpracovávají statistická data (ekonomie, geografie, meteorologie, reklama). Kartodiagramy se dělí na bodové, plošné a liniové. Důležitou částí kartodiagramu je stupnice. Na volbě stupnice záleží, zda bude mapa pro uživatele srozumitelná. V digitálních mapách se uvádí nejčastěji grafická stupnice (měřítko znaků), protože při změně velikosti mapy se zároveň mění velikost mapy i velikost stupnice. Prostředkem jazyka mapy je kartografický znak (diagram), který umožňuje v určitém místě mapy vyjádřit vlastnost zobrazovaného jevu. Bodových znaků je velké množství. U kartografických bodových znaků se zkoumají parametry, které vyjadřují kvalitativní a kvantitativní vlastnosti jevů. Jedná se o: Tvar je určen obrysovou čarou znaku (např. kruh, čtverec, trojúhelník, krychle, koule). Velikost udává kvantitativní hodnotu jevu. Kvantita je úměrná velikosti znaku, většinou jeho délce, ploše nebo objemu. Pro jednotlivé tvary znaků existují vzorce vyjadřující poměr mezi kvantitou jevu a velikostí znaku. Struktura je vnitřní členění znaku. Může vyjadřovat kvantitativní vazby, kvalitativní význam, nebo pouze estetický význam. Výplň - se vztahuje ke struktuře znaku. Změnou intenzity barvy nebo rastru lze vyjádřit kvalitu nebo kvantitu jevu. Orientace vyjadřuje polohu objektu vůči souřadnicové síti nebo jinému objektu, nebo vývoj jevu v ploše. Není-li orientace jevu součástí jevu, je orientace znaku v celé mapě konstantní. Polohové určení vyjadřuje umístění znaku v mapě pomocí souřadnic některého místa znaku (např. rohu, geometrického středu). Toto místo se označuje jako vztažný bod znaku. 20
V kartodiagramech se podle [Vož2001] nejčastěji vyskytují tyto druhy diagramů: Jednoduché diagramy Jednoduché diagramy používají ke znázornění jevu jeden geometrický tvar. Podle použitého tvaru se dělí na sloupcový, čtvercový, kruhový, polokruhový atd. Velikost obrazce narůstá s hodnotou jevu. Mezi jednoduché diagramy patří i sloupcový diagram, který vyjadřuje číselnou hodnotu jevu prostřednictvím výšky sloupce. Obr. 3.01 Jednoduché diagramy Složené diagramy Složené diagramy vyjadřují pomocí více diagramů současně více jevů nebo charakteristik různým tvarem diagramu, nebo různou polohou či orientací diagramu. Obr. 3.02 Složené diagramy Součtové diagramy Součtové diagramy vyjadřují současně vnitřní strukturu jevu a součet těchto struktur. Velikost obrazce odpovídá celkové hodnotě a vnitřní struktura podílu jednotlivých složek jevu. Kvalita je vyjádřena barvou nebo rastrem. 21
Obr. 3.03 Součtový diagram Strukturní diagramy Plocha strukturního diagramu představuje hodnotu 100% jevu rozdělenou na dílčí složky. Nevyjadřují tedy výsledný součet jednotlivých složek, ale pouze jejich zastoupení. Obr. 3.04 Strukturní diagram Výsečové diagramy Výsečové digramy umožňují současné zobrazení dvou na sobě nezávislých veličin. Jedna veličina je funkcí středového úhlu výseče, druhá veličina je funkcí poloměru. 22
Obr. 3.05 Výsečový diagram Srovnávací diagramy Srovnávací diagramy srovnávají stejný jev v různých časových obdobích, nebo vzhledem k průměrné hodnotě jevu, nebo k jinému parametru téhož jevu. Obr. 3.06 Srovnávací diagram Dynamické diagramy Dynamické diagramy znázorňují změnu velikosti (nebo množství) jevu v čase. Obr. 3.07 Dynamický diagram Směrové diagramy Směrové diagramy znázorňují intenzitu jevu v různých směrech. 23
Obr. 3.08 Směrový diagram Hvězdicový diagram Ve hvězdicovém diagramu je každé dílčí struktuře přiřazena stejně velká kruhová výseč. Kvantitativní charakteristiku jevu vyjadřuje poloměr výseče. Obr. 3.09 Hvězdicovitý diagram Podrobně se budu zabývat pouze těmi typy bodových a liniových kartodiagramů, které budu kreslit pomocí SVG. Ostatní typy kartodiagramů nejsou vhodné pro znázornění získaných dat. Jejich popis včetně příkladů lze nalézt v [Kaň1999]. 3.2.1. Kartodiagramy bodové Podle [Kaň1999] jsou kartodiagramy bodové (též bodově lokalizované kartodiagramy) kartografickým vyjádřením statistických dat ve formě diagramů vztažených ke konkrétnímu místu (sídlo, měřičská stanice apod.). Bodové kartodiagramy se dělí na jednoduché, složené, součtové, strukturní, srovnávací, dynamické a anamorfózní. Pro znázornění dopravních charakteristik použiji pouze 24
některé z nich. Kartodiagram bodový jednoduchý čtvercový zobrazuje kvantitu pouze jednoho jevu pomocí velikosti znaku. Použila jsem ho pro znázornění počtu jedoucích vozidel v Plzni v roce 2004 během jednoho týdne (kartodiagram č. 1). Zhotovuje se podle výrazu S = a 2, kde S je plocha čtverce, a je strana čtverce. Číselná hodnota jevu je tedy vyjádřena plochou čtverce. Vzhledem k hodnotám zobrazovaných dat považuji vyjádření plochou čtverce za nejvhodnější. Legenda je přehledná a rozdílnost hodnot na křižovatkách je čitelná. Kartodiagram bodový součtový kruhový je soubor diagramů umístěných v mapě v určitých bodech, kde každý z nich zobrazuje velikost jevu v absolutních hodnotách a zároveň znázorňuje vnitřní strukturu jevu. Tento typ kartodiagramu jsem použila pro znázornění počtu jedoucích vozidel v Plzni v roce 2004 v průměrný pracovní den a v průměrný víkendový den (kartodiagram č. 2). Zhotovuje se podle vzorce r = (H/hπ) 1/2, kde r je poloměr kruhu, H hodnota velikosti jevu, h jednotková plošná míra užitá v diagramu. Číselná hodnota jevu je tedy vyjádřena plochou kruhu. Kartodiagram bodový srovnávací čtvercový je soubor diagramů v mapě, kde každý z nich je složen ze dvou diagramů. Tento typ kartodiagramu jsem použila pro znázornění množství jedoucích vozidel v Plzni v průměrný den roku 2003 a průměrný den roku 2004 (kartodiagram č. 3). Číselná hodnota jevu je opět vyjádřena plochou čtverce. Srovnávací hodnotou jsou údaje z roku 2003. Hodnoty z následujícího roku pak přesahují nebo nedosahují srovnávacích hodnot. Kartodiagram bodový dynamický sloupcový prezentuje jev, který v čase na určitém území mění své hodnoty. Výrazovým prostředkem je sloupcový diagram. Tento typ kartodiagramu jsem použila pro znázornění počtu jedoucích vozidel na křižovatkách v Plzni v jednotlivých dnech týdne 20.-26.9.2004 (kartodiagram č. 4). 25
3.2.2. Kartodiagramy liniové Podle [Kaň1999] jsou liniové kartodiagramy (též stuhové, pásové, proužkové) diagramy ve tvaru pásů, probíhajících ve směru znázorňovaného jevu. Velikost a dynamika se znázorňuje pomocí barvy nebo rastru. K určení směru se většinou používají šipky. Liniové kartodiagramy jsou vhodné pro dopravní mapy, meteorologické mapy apod. Dále se dělí na stuhové a vektorové. Stuhové liniové kartodiagramy vyjadřují kvantitu, kvalitu, případně strukturu, směr, nebo dynamiku sledovaného jevu. Rozlišuje se několik typů liniových stuhových kartodiagramů: jednoduchý, strukturní, srovnávací, dynamický, složený, součtový a izochronický. Pro znázornění dopravních charakteristik použiji první čtyři typy. Kartodiagram liniový stuhový jednoduchý dvousměrný - vyjadřuje kvantitu jevu pomocí šířky stuhy a zároveň rozlišuje směr pohybu. Rozlišení směru pohybu se provádí šipkami podél stuhy, nebo použitím barev, nebo použitím šraf. Tento typ kartodiagramu jsem použila pro znázornění množství vozidel jedoucích do Plzně (resp. z Plzně) dne 26.9.2004 (kartodiagram č. 6). Kartodiagram liniový stuhový strukturní je charakteristický stejnou šířkou stuhy podél celé znázorňované trasy. Šířka stuhy tvoří celek 100%. Mění se pouze vnitřní podíly prezentovaného jevu. Tento typ kartodiagramu jsem použila pro znázornění množství vozidel na plzeňské křižovatce v týdnu 20.-26.9.2004 (kartodiagram č. 7). Kartodiagram liniový stuhový srovnávací je soubor diagramů v mapě, kde každý z nich je složen ze dvou diagramů. Stuha, která znázorňuje konkrétní průběh jevu, pak přesahuje, nebo nedosahuje srovnávací hodnoty. Tento typ 26
kartodiagramu jsem použila pro znázornění počtu jedoucích vozidel na plzeňské křižovatce v průměrný den roku 2003 (srovnávací hodnota) a v průměrný den roku 2004 (kartodiagram č. 5). Kartodiagram liniový stuhový dynamický znázorňuje změnu velikosti jevu v obdobích, která se nepřekrývají. Velikosti hodnot se vynášejí vždy od střední směrové čáry. Tento typ kartodiagramu jsem použila pro znázornění počtu vozidel jedoucích do Plzně v letech 2003 a 2004 (kartodiagram č. 8). Vektorové liniové kartodiagramy jsou typické počátečním bodem, směrem a délkou vektoru. Dělí se na kartodiagram vektorový dosahový a kartodiagram vektorový proudový. Pro tvorbu vektorových kartodiagramů nejsou získaná data vhodná. 27
4. DIGITÁLNÍ KARTOGRAFIE 4.1. Srovnání analogové a digitální kartografie Analogová kartografie (klasická kartografie) se zabývá tvorbou tvorbou map na fyzické podložce (papír, fólie). Pracuje s grafickou informací. Digitální kartografie (počítačová kartografie, desktop mapping) se zabývá tvorbou digitálních map. Pracuje s geometrickým modelem uloženým v paměti počítače. Tab. 4.1 Srovnání analogové a digitální kartografie Analogová kartografie Digitální kartografie výhody nevýhody výhody nevýhody nepotřebuje HW a SW nutnost HW a SW při výrobě i čtení mapy nutná počítačová gramotnost výrobce i uživatele map časová náročnost výroby a aktualizace map pomalé šíření map od výrobce k uživateli rychlost výroby a aktualizace map rychlé šíření map od výrobce k uživateli neskladnost papírových map skladnost při přenosu a archivaci dat pomocí nosičů (CD-ROM, DVD apod.) 28
vysoké tiskové náklady (najednou se tiskne celý náklad, bez ohledu na to, zda se prodá) tvorba map po jednotlivých map. listech (zájmová oblast může zasahovat více listů, i když není rozsáhlá) tvorba statických map minimální tiskové náklady (většinu map netiskneme) tvorba bezešvých dat tvorba interaktivních map možnost vazby na jiné dokumenty (odkazy) vysoká cena při získávání digitálních dat nedostatečná legislativa v oblasti elektronického publikování 4.2. Dělení digitálních map Digitální mapy lze dělit na: na rastrové, vektorové a smíšené, původně analogové a původně digitální, statické a dynamické, interaktivní a view only (pouze pro čtení). Podstata rastrových a vektorových map je vysvětlena v kap. 4.3. V tomto dělení 29
však existují ještě mapy smíšené, které se skládají z obou formátů. Příkladem může být naskenovaná mapa města (tedy rastrový podklad) a na něm vektorově dokreslena cesta k hledanému objektu. Původně analogové mapy měly nejprve klasickou papírovou podobu (případně mapy na PET fóliích) a digitální formu získaly skenováním nebo digitalizací. Kvalita těchto map je závislá na zvoleném rozlišení při skenování. Původně digitální mapy byly vytvořeny na počítači. Statické mapy zobrazují určitá geodata, která nelze ovlivnit. Je sice možné ovlivňovat velikost mapy, ale změna se na obsahu mapy neprojeví. U dynamických map dochází ke změně zobrazovaného obsahu (mapa se automaticky generuje). Rozdíl mezi interaktivní a view only mapou spočívá v možnosti ovlivnění zobrazení mapy uživatelem. Interaktivní mapy může uživatel nejen zvětšovat či zmenšovat a posunovat, ale i zapínat/vypínat vrstvy, dále může klást dotazy (např. najdi všechny řeky) apod. View only mapa umožňuje pouze čtení. 4.3. Prezentace dat Podle [Vož1998] je propojení a současné zpracovávání grafických (prostorových) a negrafických dat (atributů) je největší předností digitální kartografie. Existují dva základní způsoby reprezentace prostorových dat. Rastrový (explicitní) a vektorový (implicitní) formát dat. Oba tyto formáty mají své výhody i nevýhody. Každý z nich je vhodný pro určitý typ informací a analýz více o jednotlivých analýzách viz. [Jed2005]. 30
4.3.1. Rastrová prezentace dat Základem rastrových dat je překrytí dané lokality sítí (mřížkou). Ta dělí prostor na množinou (matici) bodů. Bod je základním stavebním prvkem prostoru, používá se pro něj označení pixel nebo buňka. Každý bod nese diskrétní hodnotu (atribut) a je jednoznačně určen číslem řádku a sloupce mřížky. Velikost jednotlivých buněk určuje rozlišovací schopnost systému. Příliš velké buňky mají za následek ztrátu informace, příliš malé buňky mají zase vysoké nároky na paměť počítače. Rastrová data jsou užívána pro informace, které jsou určeny především ke zobrazení, méně pak pro analýzy a modelování. Rozlišujeme dva základní typy rastru: pravidelné a nepravidelné. Pravidelné rastry mají přesně definovaný a vždy stejný tvar buněk (čtverec, obdélník, trojúhelník, šestiúhelník). Nepravidelné rastry obsahují buňky různých tvarů a velikostí. Výhody rastrové reprezentace dat: rychlé nalezení odpovědi na polohové dotazy (po zadání souřadnic buňky je okamžitě získaná odpověď o jejím obsahu), snadné překrývání a kombinace jednotlivých vrstev s různým obsahem, přímá korespondence formátu se skenovanou předlohou i s výstupem na tiskárně, jednoduchost datové struktury, vhodnost pro simulování prostorových jevů. Nevýhody rastrové reprezentace dat: velký objem dat (paměťová náročnost), přesnost a kvalita výstupů závislá na velikosti buňky, nižší vizuální kvalita výstupů, ztráta dat při transformacích (otočení, zkosení), převod na vektor je časově náročný a pro svou složitost obtížně 31
automatizovatelný. Rastrové reprezentace dat se využívá: při vytváření modelů spojitě se měnících jevů (např. digitální model reliéfu, rozložení teplot, tlaku), při řešení problémů, pomocí různých číselných kombinací dat, uložených ve více rastrech, v dálkovém průzkumu země, v digitální fotogrammetrii. 4.3.2. Vektorová prezentace dat Vektorová prezentace dat se zaměřuje na popis jednotlivých objektů pomocí vektorů, jejichž poloha je definována souřadnicemi. V teorii grafů se této prezentaci říká uzlohranová. Vektor umožňuje přesné vyjádření objektů díky jemnému rozlišení spojitého souřadnicového systému. Dále je možné propojení objektů a topologie. Základní prvky vektorových dat jsou bod, linie a plocha. Bod je základní geometrický element. Je určen souřadnicemi x a y ve 2D nebo x, y a z ve 3D prostoru. Obsahuje informaci o napojení na linii zda je nenapojený, mezilehlý nebo koncový. Linie je uspořádaná množina koncových a průběžných bodů, mezi kterými je přímkové spojení. Díky orientaci úseček lze vymezit plochy, které leží od linie nalevo/napravo. Někdy je linie označována pojmem oblouk. Plocha je uzavřená linie nebo řetězec linií. Počáteční a koncový uzel jsou identické. Počítač neumí ze souřadnic odvodit prostorové vztahy, proto se často do datového modelu zavádí topologie. Topologie je způsob, jak explicitně vyjádřit prostorové 32
vztahy mezi geometrickými objekty. Většina objektů je založena na topologických vztazích a nikoli na geometrických. Výhody vektorové prezentace digitálních dat: objektová orientace dat, kdy je možné pracovat s jednotlivými objekty jako samostatnými celky, vysoká polohová přesnost objektů => přesnost při měření ploch a délek, efektivní ukládání a správa mapových dat, protože se ukládají pouze údaje o hranicích a atributech objektů a nikoli to, co je okolo hranic, relativně malý objem uložených dat (menší nároky na paměť), kvalitní grafika, přesné kreslení, znázornění blízké mapám, je ideální pro kartografické výstupy na pérovém plotru, jednoduché vyhledávání, úpravy a generalizace objektů i jejich atributů, převod na rastr je snadný (pomocí software), transformace objektů (otočení, posunutí) jsou bezeztrátové. Nevýhody vektorové prezentace digitálních dat: složitá datová struktura, vytváření topologie je časově náročné, problémy při tvorbě uživatelských modelů, komplikované využití pro simulaci procesů, výpočtová náročnost, potřeba speciálního SW a kvalitního HW. Vektorové prezentace digitálních dat je vhodná: pro řešení problémů spojených s pohyby v sítích, pro nahrazení tradičních postupů tvorby map (např. Základní mapa ČR na podkladě ZABAGEDu), pro tvorbu map s převahou liniových prvků (např. katastrálních map), při publikování map na Internetu. 33
5. SVG Základní úlohou digitální (počítačové) kartografie je tvorba kartografických děl na počítači a grafických zařízeních a následné šíření map. K tomu je nutná výpočetní technika schopná uchovávat i rozsáhlé databáze a často finančně náročný software. Proto jsem se rozhodla seznámit se s SVG, což je otevřený vektorový formát (nezávislý na operačním systému a jednom typu SW), určený pro šíření vektorových dat prostřednictvím Internetu. SVG dokumenty jsou ukládány ve formátu SVG, resp. SVGZ (komprimovaný formát). Předpokládám, že SVG se může v digitální kartografii prosadit při distribuci map na Internetu (existuje několik stránek, které obsahují ukázky SVG map, např. http://www.carto.net/papers/svg/links/) a také při uchovávání a zobrazování map liniového charakteru, například pro kartogramy, katastrální mapy apod. Jako oblíbený příklad využití SVG je uváděn internetový průvodce městem (podrobná interaktivní mapa). Uživatel si mapu může libovolně zvětšovat a posouvat. Vždy dostane hladké detailní vyobrazení konkrétního výřezu mapy, kde navíc jednotlivé objekty mohou sloužit jako odkazy (hyperlinky) na další stránky. Bohužel jsem takovou plně funkční mapu na Internetu nenašla. SVG je zkratkou anglického výrazu Scalable Vector Graphics: Scalable stupňovatelný. Vyjadřuje a zdůrazňuje možnost libovolného zmenšování či zvětšování bez ztráty kvality a detailů obrazu. Měřítko SVG obrazu může být kdykoli změněno podle potřeby, skript jej například může automaticky přizpůsobit velikosti obrazovky cílového počítače, nebo displeji mobilního komunikátoru. Také lze stejný SVG obrázek vytisknout jako hladkou kresbu na laserové tiskárně s vysokým rozlišením. Vector Graphics - vektorová grafika. Vyjadřuje obsah matematicky definovanými geometrickými objekty, které jsou vytvářené pomocí linií a křivek. 34
SVG je progresivní technologií, která umožňuje v rámci internetových stránek využívat výhod vektorové grafiky. SVG je jazyk, který popisuje dvojrozměrnou neboli 2D grafiku. Místo pro SVG na webu existuje především díky jeho XML podstatě a kompatibilitě s vyzkoušenými technologiemi: XHTML, DOM, JavaScript, XSLT atd. SVG definuje tři základní typy grafických objektů: vektorové tvary (vector graphic shapes), rastrové obrazy (raster images) a textové objekty. SVG používá takzvaný malířův algoritmus (painter`s model). Objekty uvnitř dokumentu SVG jsou vykreslovány ve stejném pořadí, ve kterém jsou zapsány ve zdrojovém kódu (první objekt je opticky vespod, pozdější prvky ho překrývají). Úspor paměti lze dosáhnout použitím symbolů, kdy se jednou definovaný vzorový objekt použije mnohonásobně pomocí odkazů. 5.1. Vznik a vývoj SVG Zatímco v oblasti rastrové grafiky vzniklo velké množství softwarově nezávislých formátů, v oblasti vektorové grafiky byla situace před vznikem SVG opačná. Vektorové formáty nebyly kompatibilní, byly svázány s jedním typem software, případně s jediným výrobcem. Většina pokusů o vznik nezávislého prostředí pro výměnu vektorových dat byla neúspěšná. SVG je vyvíjen od roku 1998 pod záštitou konsorcia W3C. Formát není spojen s jediným výrobcem, ale za jeho vývoj odpovídá konsorcium SVG Working Group, jejímiž členy jsou významní zástupci z počítačového světa (Adobe, Apple, Corel, Macromedia, Microsoft, IBM, Hewlett Packard aj.). Některé firmy (Adobe, Corel) už zakomponovaly SVG do svých programů. Díky tomu má velmi dobré předpoklady pro reálné nasazení na Internetu. Při jeho návrhu byly využity zkušenosti získané při používaní dvou starších vektorových jazyků konkrétně PGML od Adobe a VML podporovaný 35
Microsoftem. První standardizovaná (W3C Recommendation) verze SVG 1.0 byla vydána v září 2001. Verze SVG 1.1 z ledna 2003 v podstatě rozděluje velkou specifikaci SVG 1.0 na menší části v zájmu implementace SVG na méně výkonná zařízení (pro PDA a mobilní telefony). Definovány jsou dva profily: SVG Basic a SVG Tiny (souhrnně označované jako SVG Mobile Profiles). V roce 2002 byl publikován pracovní návrh SVG 1.2. Tento návrh je obohacen především dosud chybějící vlastností automatického zarovnávání textu. Specifikaci SVG 1.1 naleznete na http://www.w3.org/tr/svg11/. 5.2. SVG dokument SVG soubory jsou textové ASCII soubory, které lze vytvářet a modifikovat pomocí libovolného textového editoru. Takový zápis umožňuje například vyhledávání textu uvnitř obrázků. SVG grafika může tvořit samostatný soubor, nebo může být vložena do HTML, XHTML nebo XML dokumentu pomocí tagu <embed>. Správná struktura SVG dokumentu je vidět v následujícím příkladě: <?xml version='1.0'?> <!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 20001102//EN''http://www.w3.org/TR/2000/03/WD-SVG- 20000303/DTD/svg-20000303-stylable.dtd'> <svg width='100' height='100' > vlastní kód </svg> První řádek kódu říká, že následující kód bude považován za XML verze 1.0. Na druhém řádku je uvedena definice typu dokumentu (DTD), jehož struktura je uvedena na adrese http://www.w3.org/tr/2000/03/wd-svg-20000303/dtd/svg- 20000303-stylable.dtd. Tato část se nazývá hlavička dokumentu. 36
Mezi značky <svg> a </svg> se zapisují tři základní typy kreslených objektů: text, křivky a cesty. Za povšimnutí ještě stojí, že objekt <svg> obsahuje údaje o šířce a výšce prostoru vymezeného pro grafiku. Tato část se nazývá tělo dokumentu. Základní prvky SVG dokumentu jsou elementy a atributy. Elementem nazýváme celou sekvenci znaků počínaje počátečním tagem a konče tagem ukončovacím (tag je prvek vložený mezi znaky < a > ). Elementem je například obdélník, elipsa apod. Na elementy se váží jednotlivé atributy. Ty jsou přiřazením nějaké vlastnosti danému elementu. Atributy se zapisují do počátečního tagu. Hodnota atributů se zapisuje do uvozovek. 5.2.1. Styly V SVG dokumentech lze používat kaskádové styly (CSS). Díky stylům je možné přizpůsobení vzhledu elementů. Styl lze přiřadit základním grafickým objektům, textu, nebo celému dokumentu. Styl je možné přiřadit i elementu g, kterým je možné vytvářet vrstvy, potom se styl vztahuje na všechny elementy ve vrstvě (nemají-li stanoveno jinak). Styly jsem připojovala pomocí atributu style. 5.2.2. Jednotky V SVG dokumentu je možné používat různé délkové jednotky i v rámci jednoho elementu. Počátkem souřadnicového systému je levý horní roh. Lze používat následující délkové jednotky: px pixel (výchozí jednotka), in palec, 37
cm centimetr, mm milimetr, em velikost písmene m standardního fontu, ex velikost písmene x standardního fontu, pc pica, 1/6 palce, pt point, 1/72 palce, % - procenta, pokud SVG dokument obsahuje další SVG dokumenty, hodnota se vztahuje ke kořenovému dokumentu. Při tvorbě map jsem používala pixely a procenta. 5.2.3. Barvy, výplně SVG pracuje v modelu RGBA - tedy základní RGB barvy plus takzvaný alfa kanál, který slouží pro uložení průhlednosti každého bodu. Hodnoty barev lze zapisovat i v prostoru srgb. Norma podporuje i správu barev pomocí ICC profilů. Barevnou výplň lze také definovat jako lineární přechod mezi minimálně dvěma barvami, kruhový přechod, nebo texturu. Pro zápis barev jsem používala hexadecimální zápis a klíčová slova. 5.2.4. Transformace Na jeden prvek lze současně aplikovat více transformací (např. změnu měřítka a otočení). Transformace grafických prvků (nebo skupiny prvků) se uskutečňují přidáním požadované transformace do atributu transform. Hodnotou tohoto atributu je seznam transformací: matrix(a,b,c,d,e,f) obecná transformační rovnice, translate(tx,ty) posun o tx,ty, 38
scale(sx,sy) změna měřítka, pokud je uvedena pouze jedna hodnota, prohlížeč předpokládá, že sx a sy jsou shodné, rotate(angle [centerx centery]) otočení o zadaný úhel okolo libovolného středu otáčení (pokud není střed zadán, je výchozí hodnota [0,0]), skewx(angle) zkosení podél osy x o zadaný úhel, skewy(anlgle) zkosení podél osy y o zadaný úhel. V kartografii se transformace často používají. Možnost transformací je jednou z výhod SVG. Při tvorbě map jsem použila změnu měřítka, posun a rotace. 5.2.5. Grafické animace Lze animovat změny barev, efektové filtry, rozměry objektu, možná je i animace pohybu po cestě. Více informací je dostupných přímo ve specifikaci SVG. Animace jsem nepoužila. 5.2.6. Text Pro jiné než anglické texty je vhodné požívat kódování UTF-8, které by měly umět všechny prohlížeče. Ke vkládání textu slouží element text, který umožňuje jednoduché manipulace s textem na jednom řádku, zarovnání nebo nastavení vlastností textu. Každý textový element se vykreslí jako jeden textový řetězec. V SVG bohužel neexistuje automatické přelévání textu v rámci více řádek. Efektu odstavce s více řádky se dosahuje tak, že se předem určí, která slova se vejdou na který řádek. Textové informace uvnitř SVG grafiky zůstávají stále textem s možností fulltextového vyhledávání, nebo třeba kopírování vybraného textu do 39
textového editoru tak, že typografie bude stejná na libovolném počítači, kde si dokument budete prohlížet. Při tvorbě map jsem použila například atributy určující velikost a barvu písma. 5.2.7. Křivky a cesty Tvorba SVG dokumentu je vlastně kreslení předem definovaných grafických objektů. Definovány jsou následující grafické objekty (elementy): rect - obdélník, circle - kruh, ellipse elipsa, line - úsečka, polyline - lomená čára, polygon mnohoúhelník, path - obecná plocha (cesta). V následujícím textu jsou stručně popsána jednotlivá primitiva, které jsem použila (více v kapitole 5.4.). Pro úplné informace odkazuji na normu SVG. Element rect (obdélník) se zobrazuje rovnoběžně s osami aktuálního souřadnicového systému. Natočení se uskutečňuje pomocí transformačních prvků. Lze nastavit zaoblení rohů obdélníka. <svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" > <title>dva obdelniky</title> <rect x="10" y="10" width="30" height="45" fill="yellow" stroke="red" stroke-width="2" /> 40
<g transform="translate(50 50) rotate(-30)"> <rect x="0" y="0" width="40" height="20" rx="3" ry="3" fill="none" stroke="black" stroke-width="3" /> </g> </svg> Obr. 5.01 Element rect Element circle (kruh) definuje kruh. <svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" > <title>kruh</title> <circle cx="50" cy="50" r="40" fill="none" stroke="blue" stroke-width="5" /> </svg> Obr. 5.02 Element circle Element line (úsečka) je definován pomocí koncových bodů. <svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" > <title>usečka</title> 41
<line x1="20" y1="80" x2="80" y2="20" stroke="blue" strokewidth="5"/> </svg> Obr. 5.03 Element line Element polyline (lomená čára) je sada spojených úseček.hodnoty mohou být odděleny mezerami nebo čárkami. <svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" > <title>lomená čára</title> <polyline fill="none" stroke="blue" stroke-width="2" points="0,0 0,10 20,0 0,30 50,0 0,70 90,0 100,100" /> </svg> Obr. 5.04 Element polyline Element polygon (mnohoúhelník) je definován jako uzavřený vektorový tvar s libovolným počtem bodů. <svg width="100" height="100" xmlns="http://www.w3.org/2000/svg" > <title>mnohoúhelník</title> <polygon fill="yellow" stroke="blue" stroke-width="2" 42
70,90" /> </svg> points="30,90 30,50 10,50 50,10 90,50 70,50 Obr. 5.05 Element polygon Element path (cesta nebo též tah) je určena pro obecné kreslení. Tento model lze nejlépe popsat jako analogii s tiskem na plotrech. To znamená, že posouváním pera kreslíte čáry. Pokud pero zvednete můžete provést přesun na novou polohu bez efektu na zobrazení (bez vykreslení čáry). Pro posun virtuálního pera existují následující příkazy: M - moveto (nastav aktuální polohu virtuálního pera bez kreslení čáry), L - lineto (kresli obecnou úsečku na nové souřadnice x, y), V vertical (kresli vertikální linku na souřadnici y), H horizontal (kresli horizontální linku na souřadnici x), C - curveto (kresli křivku), Q - quadratic Bézier (kresli kubickou Bézierovu křivku), A - arc (kresli eliptickou výseč), Z - closepath (uzavři aktuální vektorovou plochu). Jednotlivé příkazy pro kreslení cesty se zapisují jako malá nebo jako VELKÁ písmena. Tím se určí druh souřadnic - relativní či ABSOLUTNÍ. <svg width="1000" height="1000" xmlns="http://www.w3.org/2000/svg" > <title>kruhova vysec</title> <path d="m100,100 v-100 A100,100 0 1 0 153,185 z" style='fill:yellow; stroke:black; stroke-width:5;' /> </svg> 43
Obr. 5.06 Element path Element path jsem použila pouze pro kresbu kruhových výsečí. 5.3. Editory pro tvorbu SVG dokumentu Editory jsou aplikace pro tvorbu dokumentů. Obecně je lze dělit na WYSIWYG editory a textové editory. WYSIWYG editory (též vizuální, grafické editory) jsou uživatelsky jednodušší, protože nevyžadují po klientovi znalost kódu. Avšak při jejich použití si musí uživatel uvědomit, že editor pravděpodobně neposkytuje všechny funkce (vlastnosti), které formát nabízí. Textové editory. Příkladem jednoduchého textového editoru je Poznámkový blok (Notepad) dodávaný společně s Windows, který nabízí sice jen zcela minimální možnosti, ale díky schopnosti práce s prostým textem je používán celou řadou programátorů. Kromě jednoduchých textových editorů existují ještě programátorské editory (např. jedit). Vyžadují znalost kódu a grafickou představivost autora (nenabízejí totiž náhled na vytvářený dokument). Mají většinou řadu nastavitelných parametrů: barevné zvýraznění syntaxe, nabídka znakových sad, více otevřených souborů najednou, možnost validace, číslování řádků apod. Kromě nativních editorů existují konvertory. Konvertory bývají součástí programu a slouží k exportu z datového formátu programu do jiného požadovaného formátu. Kvalita výstupu však bývá často problematická, kód 44
nekvalitní a může docházet ke chybnému zobrazení. Mezi grafické programy schopné generovat SVG data patří například: Adobe IIlustrator 10, Corel Draw 11, OpenOffice 1, Karbon14 a Real Draw. Lze mezi ně řadit i SVGmaker, což je tiskový driver sloužící k převodu z libovolného formátu do SVG (resp. SVGZ). Na tvorbu map jsem si vybrala čtyři editory, které budu mezi sebou porovnávat. Dva textové editory (TextPad a jedit) a dva WYSIWYG editory (Sketsa a Sodipodi). Oba grafické editory jsou nativní editory SVG, tj. pracují s SVG jako s vlastním, přirozeným formátem. Všechny typy kartodiagramů (celkem osm) budu kreslit ve všech čtyřech zvolených editorech takovým způsobem, aby vznikly co nejvíce podobné mapy. Jedině tak lze vlastnosti editorů porovnat. 5.3.1. TextPad Textový editor TextPad 4.7.3. (http://www.textpad.com/) od Helios Software Solutions, pro platformu Windows, poskytovaný zdarma jako shareware (plná verze stojí $29 USD) je editor pro programátory i běžné uživatele. Podporuje kontrolu pravopisu, makra, rozmanité způsoby formátování a ukládání souborů, barevné zvýraznění syntaxe, panely nástrojů, dovede otevřít libovolně velký soubor v čistém textovém formátu. Program obsahuje i kontrolu pravopisu, bohužel čeština chybí. Po spuštění se zobrazí nejprve tip dne, následně samotné okno programu rozdělené na tři části. Na levé straně je seznam právě otevřených dokumentů a užitečné okno pro vkládání speciálních znaků (řídící znaky, speciální znaky HTML a HTML elementy). Lze sem doinstalovat rozšíření o různé znakové sady, např. SVG. Pravou část zabírá editační okno. 45
Obr. 5.07 Editor TextPad 5.3.2. jedit Textový editor jedit 4.2. (http://www.jedit.org/) od Slava Pestova, pro libovolnou platformu (Windows, Linux, MacOS X, Unix, VMS, Solaris), poskytovaný zdarma, je editor napsaný v Javě, proto je nutná instalace Java JRE 1.3 a vyšší. Po doinstalování XML pluginu zvýrazňuje syntaxi a nabízí elementy a atributy ke vložení (na základě DTD). K dispozici jsou základní textové úkony, jako je formátování textu na šířku, posun začátku řádku, skok na číslo řádku, skok k závorce atd. Editační okno lze horizontálně či vertikálně rozdělit na více oken. 46
Obr. 5.08 Editor jedit 5.3.3. Sketsa Grafický editor Sketsa 3.0. (http://www.kiyut.com/products/sketsa/) od KIYUT Software, pro libovolnou platformu (Windows, Linux, MacOS X, Unix, VMS, Solaris), je editor napsaný v Javě, proto je nutná instalace Java JRE 1.4.2 a vyšší. Testovací verze je zdarma, jinak je poskytován za $49 USD. Po spuštění se objeví okno rozdělené na tři části. Vlevo je nabídka pro vkládání grafických primitiv a pro některé ovládací prvky (např. výběr, posun). Uprostřed je pracovní plocha. Napravo je panel pro nastavení vlastností prvků (např. výplň, síla čáry). Editor umožňuje editaci kódu, zobrazení DOM struktury, vložení rastrových i vektorových obrázků, export do formátů jpeg a png. Velmi hodnotnou vlastností pro kartografa je možnost zobrazení obrázku (mapy) na pozadí pro 47
následné obkreslení (digitalizaci). Obr. 5.09 Editor Sketsa 5.3.4. Sodipodi Grafický editor Sodipodi 0.3.4. (http://www.sodipodi.com/) od Laurise Kaplinskeho, pro Linux, Windows, Mac OS X, je poskytovaný zdarma. Po spuštění se objeví panel nástrojů. Všechny funkce které poskytuje jsou zároveň dostupné v kontextovém menu na pravém tlačítku myši. K dispozici jsou základní vektorové tvary, práce s objektem (např. výplň, barva pera, nastavení pořadí, zrcadlení), lupa atd. Umožňuje export i import rastru. Vkládat je možné i SVG grafiku. Sodipodi zavádí vlastní rozšíření jmenného prostoru XML 48
(xmlns:sodipodi), které slouží k ukládání informací o speciálních typech objektů, což přináší problémy při validaci dokumentu. Obr. 5.10 Editor Sodipodi 5.4. Postup při tvorbě map Všechny vytvořené mapy jsou uvedeny v přílohách. Jejich tvorbě předcházela příprava dat (ze získaných dat bylo nutné vytřídit ty informace, které jsem dále použila). Data pro jednotlivé mapy jsou také uvedena v přílohách. Pak jsem si ručně rozkreslila jednotlivé kartodiagramy, včetně číselných údajů, na papír. 49
Při samotné tvorbě map jsem používala elementy rect, line, polyline, circle, polygon, path a text, dále rastrovou mapu Plzně a vektorovou mapu Plzně. Více o jednotlivých elementech v kapitole 5.2.7. Rastrovou mapu Plzně (obr. 5.11) jsem získala naskenováním papírové mapy Světelně řízených křižovatek ze [Svs2001]. Nazvala jsem jí Rastr_Plzen.JPG. Obr. 5.11 Rastrová mapa Plzně Vektorovou mapu Plzně jsem vytvořila zdigitalizováním rastrové mapy Plzně v editoru Sketsa. Rastrovou mapu jsem otevřela ve Sketse pomocí příkazu Canvas Background. Pak jsem provedla obkreslení mapy pomocí elementů polyline a text. Pro silnice a obrys města jsem zvolila odlišné barevné 50
vyjádření a odlišnou sílu čar. Zájmovým křižovatkám jsem přiřadila elementy circle, jejichž středy jsem dále považovala za přesné souřadnice křižovatek. Nakonec jsem uložila vektorovou mapu pod názvem Vektor_Plzen.svg. Obr. 5.12 Vektorová mapa Plzně V mapě č. 1 jsem ve všech editorech použila jako podklad rastrovou mapu města. Vkládání rastrových obrázků se uskutečňuje pomocí odkazů. Jako podklad map č. 2, 3 a 4 jsem použila vektorovou mapu Plzně. Dále jsem jí použila v mapách č. 5, 6, 7 a 8 jako doplňující prvek (lokalizace místa zájmu). Mapu jsem vkládala zabalenou do elementu g. Pak jsem s mapou mohla 51
pracovat jako s jedním prvkem (skupinou linií a textu), jehož posun a změnu měřítka jsem dělala pomocí transformací translate a scale. Liniové prvky map č. 5, 6, a 8 jsem kreslila pomocí elementu line. V editorech TextPad, jedit a Sketsa jsem zadávala souřadnice, šířku i výšku linie manuálně (jeden z těchto údajů vždy vyjadřoval kvantitu jevu, druhý byl konstantní). Další atribut, který jsem zadávala, byla barva linie. V Sodipodi jsem liniové prvky kreslila pomocí elementu rect, protože maximální šířka linie je omezena hodnotou 100 pixelů. Tato šířka byla pro tvorbu liniových prvků nedostačující. V mapách č. 6 a 8 byla potřeba některé liniové prvky otočit, k tomu jsem použila transformaci rotate. Díky této rotaci jsem nemusela počítat souřadnice prvků umístěných diagonálně. Liniové prvky v mapě č. 7 jsem kreslila pomocí elementu rect, protože jsem u něj mohla nastavit odlišnou barvu obrysu a výplně. Jednotlivé stuhy mají tedy černou konturu, což zvyšuje čitelnost mapy. Původně jsem sice použila element line, ale mapa nebyla dobře čitelná. 52
Obr. 5.13 Liniové prvky element line Obr. 5.14 Liniové prvky element rect 53
Bodové prvky map č. 1 a 3 jsem kreslila pomocí elementu rect. V textových i grafických editorech zadávala velikost a barvu manuálně. Umisťovacím bodem čtverců byl jejich střed. Bodové prvky v mapě č. 2 jsem kreslila pomocí elementu path. Konkrétně se jednalo o tvorbu kruhových výsečí. Jejich tvorba je poměrně složitá, je nutno zadat: střed výseče, posun od středu do bodu, ve kterém chci začít vykreslovat oblouk, poloměr kružnice, zda se jedná o kratší či delší oblouk (mezi počátečním a koncovým bodem), orientaci oblouku, koncový bod oblouku. Nezadává se tedy velikost úhlu výseče, ale dva body kruhového oblouku. To je jistě jednoduché, pokud se jedná o celý násobek čtvrtin kruhu, jinak se souřadnice těchto bodů musí řešit analyticky. Krajní body kruhového oblouku pro jednotlivé prvky jsem si vypočetla pro kružnici o poloměru sto, umístěnou v počátku. Změnu velikosti kruhových výsečí jsem dělala pomocí transformace scale a posun pomocí transformace translate. Mapu č. 2 jsem vytvořila pouze v textových editorech, protože grafické editory tvorbu kruhových výsečí neumožňují. Bodové prvky (sloupcové diagramy) v mapě č. 4 jsem vytvářela pomocí elementu line. Šířku i výšku linie jsem zadávala manuálně (délka linie vyjadřovala kvantitu jevu, šířka byla konstantní). Obr. 5.15 Bodové prvky element rect 54
Obr. 5.16 Bodové prvky element path Obr. 5.17 Bodové prvky element line Textové prvky ve všech mapách jsem zapisovala pomocí elementu text. V TextPadu, jeditu a Sodipodi jsem velikost, barvu a font písma zadávala ručně. Ve Sketse jsem velikost písma měnila pouze jako velikost geometrického objektu. 55
Obr. 5.18 Textové prvky element text Pro tvorbu legendy v mapách č. 1 a 3 jsem používala elementy rect a text. Pro tvorbu legendy v mapě č. 2 jsem použila elementy circle a text. Pro tvorbu legendy v mapách č. 4, 5, 6, a 8 jsem použila elementy line, polygon, rect a text. Obr. 5.19 Tvorba legendy 56
Pro tvorbu směrovky jsem ve všech mapách použila elementy line, polyline a text. Obr. 5.20 Tvorba směrovky Mapy které jsem vytvořila jsou rozměrově větší než velikost okna prohlížeče, proto se po otevření mapy zobrazí pouze její část. Pochopitelně jde celou mapu zobrazit pomocí změny měřítka (pravé tlačítko myši). Mapy vytvořené v textových editorech se zobrazí ihned celé, protože jsem využila možnosti atributu viewbox. Tento artribut definuje, pomocí souřadnic levého horního a pravého dolního rohu, velikost 2D prostoru, který se má zobrazit při otevření souboru v prohlížeči. Grafické editory tuto možnost nenabízejí. Obr. 5.21 ukazuje mapu č. 8 ihned po otevření prohlížeče: vlevo bez použití atributu viewbox, vpravo s použitím atributu viewbox. Obr. 5.21 Použití atributu viewbox 57
5.5. Porovnání vlastností editorů Porovnávala jsem několik vlastností editorů. Přehled porovnávaných vlastností je vidět v přehledné tabulce č. 5.1. Za ní následuje podrobné vysvětlení jednotlivých položek. Tab. 5.1 Srovnání vlastností editorů TextPad jedit Sketsa Sodipodi Platforma Windows libovolná Doba potřebná na seznámení se s editorem Vkládání hlavičky dokumentu Vkládání rastr./vektor. obrázku Práce nad rastrem Práce nad vektorem Práce s textem Tvorba kruhových výsečí platforma libovolná platforma Linux, Windows, Mac OS X 2 týdny 2 týdny 2 dny 3 dny ANO NE ANO ANO ANO ANO ANO ANO obtížná obtížná bez problémů bez problémů bez problémů bez problémů bez problémů bez problémů bez problémů bez problémů nevyhovující bez problémů ANO ANO NE NE Transformace ANO ANO ANO ANO 58
Velikost kreslící plochy Velikost souboru Validní soubor Nutná znalost kódu Doba vytvoření mapy Pracovní prostředí Celkové hodnocení neomezená neomezená neomezená neomezená malá malá větší největší ANO ANO ANO NE ANO ANO NE NE 90% 100% 70% 80% velmi dobré dobré velmi dobré dostatečné velmi dobré dobré dobré nedostatečné Doba potřebná na seznámení se s editorem byla odlišná. Příprava na práci v TextPadu a jeditu mi zabrala dva týdny (kvůli nutné znalosti kódu SVG). V grafickém editoru Sketsa jsem byla schopná vytvářet mapy přibližně za dva dny. S grafickým editorem Sodipodi jsem se seznamovala trochu déle, asi tři dny. Vkládání hlavičky dokumentu. V TextPadu se hlavička dokumentu vkládala jako jakýkoli jiný prvek z nabídky znakové sady SVG. Sketsa a Sodipodi ji vytvářely automaticky. V jeditu jsem hlavičku musela zapisovat ručně. Vkládání rastrových obrázků jsem vyzkoušela při tvorbě kartodiagramů č. 1. Použila jsem rastrovou mapu Plzně (podklad_mapa.jpg), kterou jsem získala 59
naskenováním papírové mapy křižovatek od SVSMP. Musím však upozornit na dva nedostatky: takto vytvořené kartodiagramy obsahují rastr (při změně měřítka je zhoršená čitelnost mapy), kartodiagramy obsahují odkaz na rastrový obrázek (nelze mapu publikovat bez současného publikování rastrového obrázku, při změně v rastrovém obrázku dojde k změně i v SVG obrázku, což není vždy žádoucí). Vkládání vektorových obrázků. Do kartodiagramů č. 2 č. 8 jsem vložila vektorovou mapu Plzně ve formátu SVG (více o této mapě v kap. 5.4.). SVG obrázek se neukládal jako odkaz, ale jeho zdrojový kód se uložil ve všech editorech přímo do zdrojových kódů vznikajících kartodiagramů. Vzniklé mapy tedy neobsahují odkaz na vektorový obrázek. Práce nad rastrem byla v grafických editorech pohodlná. Umisťování značek na konkrétní místo bylo snadné. V textových editorech byla situace složitější. Značky jsem umisťovala na konkrétní křižovatky, jejichž souřadnice jsem neznala, postupem pokus/omyl. Nejprve jsem odhadla přibližné souřadnice, které jsem postupně zpřesňovala (umístění jsem kontrolovala v prohlížeči). Tento postup by byl při tvorbě více map neefektivní (zároveň také nevhodný). Řešením by mohlo být odečítání správných souřadnic pomocí dostatečně přesné mřížky, kterou by se obrázek dočasně překryl. Při práci nad vektorem jsem neměla žádný problém. V grafických editorech byla práce srovnatelná s prací nad rastrem. V textových editorech byla snadnější, jelikož jsem znala přesné souřadnice křižovatek. Ty jsem získala při tvorbě vektorové mapy Plzně. Práce s textem nebyla úplně ideální. O největším nedostatku SVG, tj. neschopnosti zalamovat řádky, jsem se zmínila už v kapitole 5.2.6. V editoru Sketsa docházelo k dalšímu problému. Sice zde existuje panel k volbě fontu a 60
velikosti písma, ale bohužel není funkční. Font a velikost písma jsou nastaveny automaticky. Pokud chceme velikost změnit, musíme použít tzv. scale tool, nebo-li velikostní transformaci a písmo natáhnout nebo naopak zmenšit taháním za okraj písma. Takovéto ovládání je pro kartografa naprosto nevyhovující. V editoru Sodipodi a v textových editorech k problémům nedocházelo. Sodipodi má ovládací panel, kde je možné si vybrat požadovanou velikost i font písma. V textových editorech se k písmu připsal požadovaný styl. Tvorba kruhových výsečí. Bohužel musím konstatovat, že ani jeden grafický editor není schopen kreslit kruhový výseče. V textových editorech se tvorba kruhových výsečí kreslí pomocí elementu path. Zápis tohoto elementu je poměrně složitý, je nutné znát souřadnice krajních bodů kruhového oblouku (více v kap. 5.4.). Transformace. Ve všech vybraných editorech bylo možné provádět transformace (obecná transformace, posun, otočení, změna měřítka) zadáním přesných hodnot. Pouze Sodipodi neumožňuje zkosení os o daný úhel. Velikost kreslící plochy je v textových editorech volitelná. Velikost je možné zadávat v libovolných jednotkách, včetně procent. Ve Sketse je možný výběr z nastavených rozměrů kreslící plochy (uvedeny v pixelech): 600x600, 640x480, 800x600, 468x60, 1024x768, nebo si uživatel nastaví vlastní velikost plochy pomocí atributu custom. V Sodipodi se automaticky otevře kreslící plocha formátu A4, velikost lze ale dodatečně změnit pomocí atributu dokument. Pro kartografa je jistě důležitá možnost pozdějších úprav v mapě. K tomu je důležitá přehlednost kódu. Jedině tak v něm lze najít prvek, který chceme změnit nebo vymazat. V textových editorech (TextPad, jedit) kód vytváří autor sám, tudíž zaleží pouze na něm, jak bude text strukturovat. Kód z textových editorů je srozumitelný a jeho pozdější úprava je možná (této možnosti jsem několikrát 61
využila). V Sodipodi vytváří kód sám editor. Výsledný kód sice vypadá nepřehledně, nicméně je možné v něm požadovaný prvek najít. Pochopitelně zde existuje možnost otevřít dokument v editoru a úpravu provést graficky. Ve Sketse opět vytváří kód editor. Existuje tu však možnost otevření kódu přímo v editoru a následné zapisování do něj. Tyto textové úpravy se pak aplikují na grafiku. Kód ze Sketsy je přehledně strukturovaný. Z tabulky č. 5.2 je vidět, že velikost vytvořených souborů v různých editorech je srovnatelná. Textové editory vytvářejí menší soubory, naopak největší soubory jsou vytvořeny v Sodipodi. Tab. 5.2 Velikost kódů vytvořených map TextPad (velikost v kb) jedit (velikost v kb) Sketsa (velikost v kb) Sodipodi (velikost v kb) Kartodiagram č. 1 3,5 1 3,6 1 3,6 1 6,0 1 Kartodiagram č. 2 25,9 25,8 2 2 Kartodiagram č. 3 24,9 24,6 26,6 32,1 Kartodiagram č. 4 32,5 31,9 36,8 55,6 Kartodiagram č. 5 21,7 21,3 26,8 27,2 Kartodiagram č. 6 25,0 24,7 32,1 27,7 Kartodiagram č. 7 25,2 24,8 27,3 35,2 Kartodiagram č. 8 24,9 24,5 28,0 28,4 1 Při publikování na Internetu je vhodná validace všech vytvořených souborů, tj. kontrola správnosti kódu (zda odpovídá předepsaným normám). K validaci SVG map jsem použila W3C MarkUp Validator (k dispozici na stránkách [W3C2005]). Chyby obsahovaly pouze soubory vytvořené v Sodipodi. Sodipodi používá při ukládání vlastní atributy a elementy, které nejsou identické s atributy a elementy definovanými v normě. 1... Kartodiagramy, které byly kresleny na podkladě mapy ve formátu JPEG, zdrojový kód obsahuje odkaz na tento rastrový obrázek. 2... Kartodiagramy nebylo možné v těchto editorech vytvořit. 62
Znalost kódu je pro práci v textových editorech nezbytná. V grafických editorech sice není nutná, ale alespoň povrchní znalost je podle mě výhodou například při zadávání atributů. Ve Sketse lze navíc zasahovat přímo do kódu a změny následně aplikovat na grafiku. Doba potřebná na vytvoření mapy se v grafických a textových editorech lišila. Ve Sketse a Sodipodi byla přibližně stejná. Stejně tak tomu bylo v případě TextPadu a jeditu. Časově nejvíce náročná byla práce v jeditu (průměrná mapa 180 minut). Méně časově náročná byla práce v TextPadu (průměrná mapa 165 minut). Pohodlnější a časově méně náročná byla práce v grafických editorech: Sketsa (130 minut) a Sodipodi (145 minut). Pracovní prostředí mělo značný vliv na rychlost práce. V prostředí TextPadu se mi pracovalo velmi dobře. Nabídka SVG elementů (po doinstalování znakové sady SVG) je přehledně seskupena. Všechny ikony, které jsem použila, jsem snadno našla. V prostředí Sketsy se mi pracovalo také dobře. Vyhovovala mi nabídka elementů na levé straně a nabídka jejich atributů na straně pravé. Prostředí jeditu mě příliš nezaujalo. Po doinstalování XML pluginu se sice také objevuje nabídka SVG elementů, ty jsou však seřazeny abecedně, což mi nevyhovovalo. Prostředí Sodipodi mi nepřipadalo praktické. Údajná výhoda libovolného umístění a rozdělení nástrojové lišty na mě působilo spíše zmatečně. Také dostupnost některých nastavení pouze pod pravým tlačítkem mi nepřipadalo vhodné, zdržovalo mě při práci a některé položky jsem nacházela dosti obtížně. Celkové hodnocení. Už z úvodní tabulky je vidět, že žádný z editorů není úplně dokonalý, každý s sebou přináší jistá omezení: textové editory vyžadují znalost kódu a představivost tvůrce map, naopak grafické editory mají řadu omezení (tvorba kruhových výsečí, větší velikost souborů, validace Sodipodi souborů). Pro kartografickou tvorbu bych za ideální považovala skloubení TextPadu a Sketsy. Oba tyto editory mají, podle mého názoru, velmi příjemné pracovní prostředí. 63
Sketsa generuje přehledný kód, který lze snadno upravovat, ale práce s textem je nevyhovující. TextPad nabízí ničím neomezené možnosti SVG, ale neposkytuje náhled na vytvářený dokument. Při práci v TextPadu mi vyhovovala přehledná nabídka tagů, které se snadno vkládaly do dokumentu. Ve Sketse mi vyhovovala především možnost digitalizace rastrových map, kterou jsem využila. Méně vhodný mi připadá jedit, sice nabízí, stejně jako TextPad, neomezené možnosti SVG, ale jeho pracovní prostředí mě mírně zdržovalo při práci (nabídka tagů se zpřístupní až po uložení vytvářeného dokumentu). Jako nevyhovující jsem zhodnotila editor Sodipodi (např. vlastní jmenný prostor neumožňuje vytvořit validní stránku). 5.6. Zhodnocení využití SVG V předchozím textu jsem popsala rozsáhlé možnosti SVG formátu. Zdá se, že volba práce ve více editorech byla správná: různé editory měli různá omezení. Nicméně jsem si vyzkoušela použití prvků a vlastností, které jsou v kartografii důležité: tvorba liniových, bodových a textových prvků, nastavení vlastností prvku (velikost, barva), transformace (posun, otočení, změna měřítka), rušení prvků. Všechny uvedené parametry jsou zhodnoceny v Tab. 5.3. Tab. 5.3 Parametry hodnocení Parametry Tvorba liniových prvků Tvorba bodových prvků Tvorba textových prvků Nastavení velikosti prvku Nastavení barvy prvku Posun prvku Otočení prvku Změna měřítka prvku Rušení prvku Složitost úkonů Snadná složitá tvorba kruhových výsečí Snadná Snadné Snadné Snadný Snadné Snadná Snadné 64
V následující tabulce je přehled typů kartodiagramů, kterými jsem se zabývala. U každého z nich je uvedeno, zda je, podle mých zkušeností, vhodné tento typ vytvářet pomocí formátu SVG. Tab. 5.4 Vhodnost SVG pro kartodiagramy Typ kartodiagramu Kartodiagram bodový jednoduchý čtvercový Kartodiagram bodový součtový kruhový Kartodiagram bodový srovnávací čtvercový Kartodiagram bodový dynamický sloupcový Kartodiagram liniový stuhový srovnávací Kartodiagram liniový stuhový jednoduchý dvousměrný Kartodiagram liniový stuhový strukturní Kartodiagram liniový stuhový dynamický Doporučení formátu SVG pro tvorbu daného typu kartodiagramu VHODNÝ NEVHODNÝ VHODNÝ VHODNÝ VHODNÝ VHODNÝ VHODNÝ VHODNÝ Z uvedené tabulky je vidět, že formát SVG mi zcela vhodný připadá pouze pro tvorbu liniových kartodiagramů. Co se týče bodových kartodiagramů, jsem s doporučením opatrná. Pokud bychom měli tvořit typy kartodiagramů, ve kterých se hodnoty vyjadřují pomocí kruhových výsečí (součtový, strukturní, výsečový), použití SVG bych nedoporučila. Na základě získaných poznatků formát SVG doporučuji nejen k tvorbě liniových kartodiagramů, ale obecně k tvorbě všech typů map, které obsahují převážně liniové prvky: kartogramy, katastrální mapy apod. Ještě připomínám jednu z výhod SVG díky relativně malým velikostem souborů je možné takové mapy publikovat na Internetu. 65
5.7. Komentář k vytvořeným mapám Celkem jsem vytvořila osm různých tematických map kartodiagramů: Kartodiagram č. 1 ukazuje kolik jedoucích vozidel bylo v Plzni v jednom týdnu v roce 2004. Je vidět, že některé křižovatky v centru města dosahovaly téměř trojnásobné zatížení v porovnání s jinými. Kartodiagram č. 2 ukazuje srovnání počtu jedoucích vozidel v průměrný pracovní den a průměrný víkendový den v roce 2004. Potvrdilo se očekávání, že během pracovního dne projede Plzní přibližně dvakrát více vozidel než během víkendového dne. Zároveň lze z mapy vyčíst celkový počet vozidel projíždějících jednotlivými křižovatkami v porovnávaných dnech. Kartodiagram č. 3 znázorňuje srovnání počtu jedoucích vozidel v průměrný den roku 2003 a roku 2004. Je vidět, že na všech plzeňských křižovatkách došlo k úbytku projíždějících vozidel. Tento jev je pravděpodobně způsoben otevřením dálničního obchvatu Plzně. Kartodiagram č. 4 ukazuje kolik vozidel projelo křižovatkami v jednotlivých dnech týdne v roce 2003. Podle očekávání nejméně vozidel jezdí v Plzni v sobotu, naopak nejvíce většinou v pátek. Kartodiagram č. 5 je zaměřen na jednu křižovatku, konkrétně ve směru do (od) Prahy. Ukazuje kolik vozidel tudy projelo v průměrný den v roce 2003 a v roce 2004. Je dobře vidět, že počet vozidel vjíždějících do Plzně klesl téměř o dvě třetiny a počet vozidel jedoucích z Plně klesl přibližně o třetinu. Tento pozitivní jev je jistě způsoben otevřením dálničního obchvatu kolem Plzně. Kartodiagram č. 6 ukazuje kolik vozidel jelo do Plzně, resp. z Plzně, dne 26.9.2004. Je vidět, že ve směrech: Praha, České Budějovice, Domažlice a 66
Rozvadov opustilo Plzeň více vozidel než v těchto směrech do Plzně vjelo. Kartodiagram č. 7 ukazuje rušnou křižovatku v Plzni v jednotlivých dnech týdne v roce 2004. Z mapy lze vyčíst, že procentuálně nejmenší zátěž prožívá křižovatka během víkendu. Kartodiagram č. 8 ukazuje kolik vozidel přijíždělo do Plzně ve významných směrech v průměrný den roku 2003 a roku 2004. Velmi dobře je vidět úbytek počtu vozidel ze směrů: Praha, Domažlice a České Budějovice. K největšímu úbytku došlo ve směru od Prahy, což je pravděpodobně způsobeno otevřením dálničního obchvatu Plzně. 5.8. Prohlížeče a SVG Velmi důležitá je podpora formátu SVG v internetových prohlížečích. Zatím většina prohlížečů přímo tento formát nepodporuje (výjimku tvoří jen Opera 8, která plně podporuje SVG Tiny). Zobrazení SVG grafiky se v ostatních internetových prohlížečích řeší pomocí pluginů. Zatím nejlepší plugin je SVG Viewer 3 od firmy Adobe Systems. Je zdarma k dispozici na adrese http://www.adobe.com/. Rozpracovaná je verze SVG Viewer 6, zatím je k dispozici pouze beta verze. Adobe SVG Viewer lze používat na platformách Windows a Mac, v prohlížečích Netscape, Microsoft Internet Explorer, Firefox. Dalším rozšířeným pluginem je Corel SVG Viewer. Je zdarma k dispozici na adrese http://www.corel.com/. Lze ho používat na platformě Windows, v prohlížečích Microsoft Internet Explorer a Netscape. Kromě pluginů do internetových prohlížečů existují ještě specializované prohlížeče, které umožňují zobrazení SVG dokumentů. Nejvíce mě zaujal 67
Squiggle, který je součástí knihovny Batik (k dispozici na adrese http://www.apache.org/dyn/closer.cgi/xml/batik). Tento prohlížeč je opensource, nezávislý na platformě, ale vyžaduje instalaci Javy. Umožňuje zobrazení, tisk a export (do formátů JPEG, TIFF, PNG), zobrazení kódu a stromové reprezentace (DOM), ovládání dokumentu (změnu velikosti, posun, otočení, transformace). Ovládání SVG dokumentu v prohlížečích se uskutečňuje pomocí pravého tlačítka myši (změna měřítka), nebo pomocí levého tlačítka myši a levého tlačítka Alt (posun). 5.9. Zajímavé odkazy http://www.w3.org/tr/svg11/ - Specifikace SVG 1.1. http://www.adobe.com/svg/main.html - Stránka od Adobe zabývající se SVG formátem a vlastními produkty používající tento formát, včetně zajímavých ukázek. http://xml.apache.org/batik/ - Stránka věnovaná prohlížeči a knihovně Batik 1.6: Tato knihovna pro Javu umožňuje zobrazovat, zpracovávat a generovat SVG formát. http://wdvl.com/authoring/languages/xml/svg/ - Na této stránce je mnoho zajímavých odkazů s SVG tématikou. Odkazy jsou zde srovnány do skupin (např. obecné informace, diskuze, prohlížeče, pluginy atd.). http://groups.yahoo.com/group/svg-developers/ - Na této stránce probíhá šestým rokem diskuze o SVG, která má již téměř 50 000 příspěvků. http://www.carto.net/papers/svg/navigationtools/ - Společnost Carto-net se zabývá nejen kartografií, ale i využitím SVG v kartografii. Na této stránce je uveden pěkný příklad interaktivní SVG mapy, včetně postupu její tvorby. http://www.svgopen.org/2005/ - Společnost SVG Open pořádá od roku 2002 konference zabývající se formátem SVG. Postupně se uskutečnily ve 68
Švýcarsku, Kanadě, Japonsku a Nizozemí. Zabývaly se využitím SVG v GISech (navigační mapy), při tvorbě katastrálních map, při navigaci uvnitř objektů, při publikování map na internetu atd. http://www.loiret.com/cgloiret/sites/atlas/ - Atlas francouzské oblasti vytvořený v SVG s možností zobrazení různých tematických map, včetně kartodiagramů. Další ukázky SVG map lze najít na adrese: http://www.carto.net/papers/svg/links/. http://interval.cz/ - Na tomto serveru vychází od dubna 2003 neukončená série článků o SVG. 69
6. ZÁVĚR Cílem této diplomové práce bylo zhodnotit využití vektorového grafického formátu SVG při kartografickém znázorňování dopravních charakteristik. Dopravní charakteristiky jsem znázorňovala jako tematické mapy, konkrétně jako kartodiagramy. Kartodiagramů existuje mnoho typů, proto jsem se zaměřila na tvorbu pouze osmi typů kartodiagramů (výběr byl ovlivněn získanými daty) ve čtyřech různých editorech (více viz. kapitola 5.3). Zhodnocení editorů bylo důležitou částí práce. Při hodnocení editorů nejlépe dopadl textový editor TextPad, případně jeho kombinace s grafickým editorem Sketsa: TextPad nabízí ničím neomezené možnosti SVG. Má přehledně uspořádanou nabídku tagů. Zobrazuje pouze zdrojový kód. Sketsa zobrazuje grafiku i zdrojový kód. Práce s textem je sice nedokonalá, ale hodnotnou vlastností je možnost digitalizace rastrových map. Textový editor jedit zařazuji v hodnocení za TextPad, protože neumožňuje například automatické vkládání hlavičky dokumentu. Grafický editor Sodipodi hodnotím jako nevyhovující, protože nevytváří validní dokument. Formát SVG jsem hodnotila bez ohledu na nedostatky editorů. Využití tohoto formátu pro tvorbu kartodiagramů je možné pouze v případě, že provádění pro kartografickou tvorbu důležitých operací (tvorba liniových, bodových a textových prvků, nastavení vlastností prvku, transformace či rušení prvků) bude jednoduché a přesné. Všechny uvedené operace jsou v SVG jednoduché i přesné. Výjimkou je pouze tvorba kruhových výsečí. Ta se v SVG uskutečňuje pomocí elementu path, který vyžaduje zapsání několika parametrů, mimo jiné i souřadnice krajních bodů kruhové výseče, což se musí ve většině případů řešit analyticky. Na základě získaných poznatků tedy hodnotím formát SVG jako vhodný 70
pro tvorbu liniových stuhových kartodiagramů (konkrétně pro dynamický, jednoduchý dvousměrný, strukturní a srovnávací). Ze zkušenosti, že tvorba liniových kartodiagramů byla snadná, usuzuji, že SVG je vhodný pro tvorbu všech typů map, které obsahují převážně liniové prvky: kartogramy, katastrální mapy apod. Můj názor je podpořen například ukázkou mapy sítě Českých drah na adrese: http://www.cd.cz/index.php?action=article&id=306. Pro tvorbu bodových, resp. plošných, kartodiagramů (konkrétně pro jednoduchý, srovnávací čtvercový a dynamický sloupcový) hodnotím SVG také jako vhodný. Výjimku tvoří pouze kartodiagramy kruhové, které jsou tvořeny kruhovými výsečemi (součtový, strukturní, výsečový). Pro jejich tvorbu hodnotím SVG jako nevhodný formát a jeho použití v této oblasti nedoporučuji. Nezanedbatelnou výhodou SVG je ekonomická dostupnost (finanční náklady na jeho používání mohou být nulové). Není závislý na operačním systému, ani není spjat s jedním typem SW. Mnoho editorů na tvorbu SVG dokumentů je freeware. Tím se liší od (v GISech často používaného) vektorového formátu SHP, který je svázán s produkty firmy ESRI a editory na tvorbu map v tomto formátu jsou finančně náročné. 71
SEZNAM POUŽITÝCH ZDROJŮ Knihy [Bri1999] Brinke, Josef. Úvod do geografie dopravy. 1. vydání. Praha: Karolinum, 1999. 112 s. ISBN 80-7184-923-5 [Eis2002] Eisenberg, David J. SVG Essentials. 1. vydání. Sevastopol: O'Reilly & Associates, Inc. 2002. 364s. ISBN: 0-596-00223-8 [Kaň1999] Kaňok, Jaromír. Tematická kartografie. 1. vzdání. Ostrava: Ostravská universita. 1999. 318 s. ISBN: 80-7042-781-7 [Mir1994] Mirvald Stanislav, Matušková Alena. Geografie města Plzně. Plzeň: Západočeská univerzita. 1994. 107s. [Vev2001] Veverka, Bohuslav. Topografická a tematická kartografie 10. 1. vydání. Praha: Vydavatelství ČVUT. 2001. 220 s. ISBN: 80-01-02381-8 [Vož2001] Voženílek, Vít. Aplikovaná kartografie I., Tematické mapy. 2. vydání. Olomouc: Univerzita Palackého. 2001. 187 s. ISBN: 80-244-0270-X [Vož1998] Voženílek, Vít. Geografické informační systémy I., Pojetí, historie, základní komponenty. 1. vydání. Olomouc: Univerzita Palackého. 1998. 174 s. ISBN: 80-7067-802-X Ročenky [Svs2001] Správa veřejného statku města Plzně, Úsek koncepce dopravního inženýrství. Informace o dopravě v Plzni. 2001. 27 s. 72
[Svs2003] Správa veřejného statku města Plzně, Úsek koncepce dopravního inženýrství. Informace o dopravě v Plzni. 2003. 26 s. Internetové zdroje [Dee2002] DEEMAN. SVG page [online]. [2002-01-08]. [cit. 2005-01-08]. <http://svg.webzdarma.cz/>. [Gre1999] GREGOR, Jan. SVG technologie 21. století pro web [online]. Zoner software, s.r.o. ISSN: 1212-8651. [1999-12-08]. [cit. 2004-12-15]. <http://interval.cz/clanek.asp?article=92>. [Hej2005] HEJRAL, Martin. Kurz SVG tvorba vektorové grafiky v XML [online]. Zoner software, s.r.o. ISSN: 1212-8651. [cit. 2005-03-15]. <http://interval.cz/serial.asp?serial=76>. [JEd2005] JEDIT, Programmer's Text Editor [online]. [cit. 2005-05-20]. <http://www.jedit.org/>. [Jed2005] JEDLIČKA, Karel. Úvod do GIS [online]. [cit. 2005-02-19]. <http://www.gis.zcu.cz/index.php?page=ugi_eskripta.>. [Kan2005] KANDA, Jiří. Scalable Vector Graphics [online]. [cit. 2005-04-20]. <http://www.volny.cz/jkanda/fel/nur/>. [Kiy2005] SKETSA, SVG Graphics Editor [online]. 2003-2005. [cit. 2005-02- 18]. <http://www.kiyut.com/products/sketsa/>. [Kos2005] KOSEK, Jiří. Vše o WWW Domovská stránka Jirky Koska [online]. 1995-2005. [2005-02-27]. [cit. 2005-03-05]. <http://www.kosek.cz/>. 73
[Kre2005] KREJČÍ, Richard. SVG v nové verzi [online]. Grafika Publishing spol. s.r.o. 2003. [cit. 2005-01-22]. <http://www.grafika.cz/art/webdesign/svg11.html>. [Sod2005] SODIPODI [online]. [cit. 2005-05-20]. <http://www.sodipodi.com/>. [Spr2004] SVSMP. Správa veřejného statku města Plzně [online]. 2004. [cit. 2004-05-11]. <http://info.plzen-city.cz/svs/>. [Tex2005] TEXTPAD, Text Editor for Window [online]. 2005. [cit. 2005-01- 30]. <http://www.textpad.com/>. [W3C2005] W3C World Wide Web Konsorcium [online]. 1994-2005. [cit. 2005-05-10]. <http://www.w3.org/>. 74
PŘÍLOHY 75
Příloha 1 - Data pro tvorbu map Kartodiagram č.1 číslo 20.9.2004 21.9.2004 22.9.2004 23.9.2004 24.9.2004 25.9.2004 26.9.2004 vozidel křižovatky celkem 1 44157 42204 42292 41800 44643 29690 25664 270450 2 53227 51874 53893 53440 55741 36616 29638 334429 3 19374 18945 17708 16156 19668 11996 9898 113745 4 36536 34934 33613 34437 34932 24696 21174 220322 5 17637 17034 16743 16256 17801 12107 10808 108386 6 28524 27375 27595 27653 29148 19238 16223 175756 7 28136 28289 28435 28315 29737 21691 18285 182888 8 54228 51823 52520 51943 55459 39545 33880 339398 9 15629 15195 15764 15271 17325 11778 10021 100983 10 20277 19452 19991 19596 22293 17415 14968 133992 11 25371 20426 22737 22952 22603 16478 14653 145220 12 25792 24254 24240 22657 26430 13909 11610 148892 13 32784 31652 32524 31710 33825 22039 18408 202942 Kartodiagram č.2 číslo křižovatky prům. pracovní den (počet vozidel) prům. víkendový den (počet vozidel) prům. pracovní den (počet vozidel v %) prům. víkendový den (počet vozidel v %) 1 43019 27677 61 39 2 53635 33127 62 38 3 18370 10947 63 37 4 34890 22935 60 40 5 17094 11458 60 40 6 28059 17731 61 39 7 28582 19988 59 41 8 53195 36713 59 41 9 15837 10900 59 41 10 20322 16192 56 44 11 22818 15566 59 41 12 24675 12760 66 34 13 32499 20224 62 38 76
Kartodiagram č. 3 číslo 20.9.2003 21.9.2003 22.9.2003 23.9.2003 24.9.2003 25.9.2003 26.9.2003 prům. den (počet křižovatky vozidel) 1 35849 33605 48065 45659 46061 47764 48112 61023 2 33105 30969 49484 47337 49257 48873 49854 61776 3 12539 11305 18334 17100 18087 17999 18367 22746 4 52831 47574 63402 66937 69179 63636 66090 85930 5 18283 16538 21357 20763 20905 21544 21604 28199 6 19292 18609 28722 26901 28199 28232 29756 35942 7 22967 20275 30967 29695 30488 30914 31661 39393 8 38178 35699 51517 49732 51231 51186 53615 66232 9 11495 10647 15131 14043 15115 14907 16194 19506 10 17984 16614 20225 19112 19757 20308 22979 27396 11 29129 25747 34379 34598 35033 35589 40246 46944 12 16195 14817 26644 26369 26606 25979 26626 32647 13 24205 22228 33856 32123 34236 33471 34366 42897 číslo 20.9.2004 21.9.2004 22.9.2004 23.9.2004 24.9.2004 25.9.2004 26.9.2004 prům. den (počet křižovatky vozidel) 1 44157 42204 42292 41800 44643 29690 25664 38636 2 53227 51874 53893 53440 55741 36616 29638 47776 3 19374 18945 17708 16156 19668 11996 9898 16249 4 36536 34934 33613 34437 34932 24696 21174 31475 5 17637 17034 16743 16256 17801 12107 10808 15484 6 28524 27375 27595 27653 29148 19238 16223 25108 7 28136 28289 28435 28315 29737 21691 18285 26127 8 54228 51823 52520 51943 55459 39545 33880 48485 9 15629 15195 15764 15271 17325 11778 10021 14426 10 20277 19452 19991 19596 22293 17415 14968 19142 11 25371 20426 22737 22952 22603 16478 14653 20746 12 25792 24254 24240 22657 26430 13909 11610 21270 13 32784 31652 32524 31710 33825 22039 18408 28992 77
Kartodiagram č. 4 číslo 20.9.2003 21.9.2003 22.9.2003 23.9.2003 24.9.2003 25.9.2003 26.9.2003 křižovatky 1 35849 33605 48065 45659 46061 47764 48112 2 33105 30969 49484 47337 49257 48873 49854 3 12539 11305 18334 17100 18087 17999 18367 4 52831 47574 63402 66937 69179 63636 66090 5 18283 16538 21357 20763 20905 21544 21604 6 19292 18609 28722 26901 28199 28232 29756 7 22967 20275 30967 29695 30488 30914 31661 8 38178 35699 51517 49732 51231 51186 53615 9 11495 10647 15131 14043 15115 14907 16194 10 17984 16614 20225 19112 19757 20308 22979 11 29129 25747 34379 34598 35033 35589 40246 12 16195 14817 26644 26369 26606 25979 26626 13 24205 22228 33856 32123 34236 33471 34366 Kartodiagram č. 5 prům. den v roce 2003 (počet vozidel) prům. den v roce 2004 (počet vozidel) Rokycanská centrum 16770 12318 Rokycanská Praha 13146 4764 Tesco 3613 3664 Kartodiagram č. 6 číslo křižovatky počet vozidel jedoucích do Plzně 26.9.2004 počet vozidel jedoucích z Plzně 26.9.2004 5 4590 6133 6 4129 7591 9 4294 4404 10 4508 6121 11 2792 8296 12 1527 6005 13 6544 6146 78
Kartodiagram č. 7 Mikulášská centrum 20.9.2004 21.9.2004 22.9.2004 23.9.2004 24.9.2004 25.9.2004 26.9.2004 (počet vozů) (počet vozů) (počet vozů) (počet vozů) (počet vozů) (počet vozů) (počet vozů) ( %) ( %) ( %) ( %) ( %) ( %) ( %) 17 15 16 16 17 10 9 U Trati 16 16 17 16 18 10 7 Mikulášská Slovany 21 20 18 10 19 6 6 Železniční 17 15 15 17 17 10 9 Kartodiagram č. 8 číslo 20.9.2003 21.9.2003 22.9.2003 23.9.2003 24.9.2003 25.9.2003 26.9.2003 prům. den křižovatky (počet vozidel) 5 9480 7787 9354 9680 10084 10693 11136 9745 6 4871 5170 6918 6471 6740 6905 7154 6318 9 4448 4521 6260 5653 6212 6060 6242 5628 10 5052 5127 6048 5877 5982 6007 6474 5795 11 10146 10025 14837 14072 14316 14151 14478 13146 12 4362 4387 7132 7644 7185 7013 7163 6412 13 8123 8317 11183 10493 11076 10926 10912 10147 číslo 20.9.2004 21.9.2004 22.9.2004 23.9.2004 24.9.2004 25.9.2004 26.9.2004 prům. den křižovatky (počet vozidel) 5 7794 7726 7914 7968 8823 5859 4590 7239 6 7101 6861 6951 7047 7308 4789 4129 6312 9 6554 6273 6562 6270 6971 4725 4294 5950 10 5858 5886 5909 5862 6273 4532 4508 5547 11 8637 4696 5579 5223 3694 2728 2792 4764 12 5640 5037 4641 2679 4974 1705 1527 3743 13 11505 11139 11049 10682 11487 7110 6544 9931 79
Příloha 2 - Mapy vytvořené v editoru TextPad Kartodiagram č. 1 80
Kartodiagram č. 2 81
Kartodiagram č. 3 82
Kartodiagram č. 4 83
Kartodiagram č. 5 84
Kartodiagram č. 6 85
Kartodiagram č. 7 86
Kartodiagram č. 8 87
Příloha 3 - Mapy vytvořené v editoru jedit Kartodiagram č. 1 88
Kartodiagram č. 2 89
Kartodiagram č. 3 90
Kartodiagram č. 4 91
Kartodiagram č. 5 92
Kartodiagram č. 6 93
Kartodiagram č. 7 94
Kartodiagram č. 8 95
Příloha 4 - Mapy vytvořené v editoru Sketsa Kartodiagram č. 1 96
Kartodiagram č. 3 97
Kartodiagram č. 4 98
Kartodiagram č. 5 99
Kartodiagram č. 6 100
Kartodiagram č. 7 101
Kartodiagram č. 8 102
Příloha 5 - Mapy vytvořené v editoru Sodipodi Kartodiagram č. 1 103
Kartodiagram č. 3 104
Kartodiagram č. 4 105
Kartodiagram č. 5 106
Kartodiagram č. 6 107
Kartodiagram č. 7 108
Kartodiagram č. 8 109