MASARYKOVA UNIVERZITA V BRNĚ

Podobné dokumenty
Kartodiagramy. Přednáška z předmětu Tematická kartografie (KMA/TKA) Otakar Čerba Západočeská univerzita

GIS Geografické informační systémy

Kartografické znaky. Přednáška z předmětu Tematická kartografie (KMA/TKA) Otakar Čerba Západočeská univerzita

GIS Geografické informační systémy

Kartogramy. Přednáška z předmětu Tematická kartografie (KMA/TKA) Otakar Čerba Západočeská univerzita

Jihočeská univerzita v Českých Budějovicích Pedagogická fakulta Katedra informatiky Akademický rok:

M M S. Značkovací jazyky

APLIKACE TEMATICKÝCH MAP ATLAS ORP ROKYCANY SE ZAMĚŘENÍM NA VOLBY

Mapa Česka:

Uživatelská příručka mapový prohlížeč irso 4.0.

Publikování map na webu - WMS

7. Tematická kartografie

- bodové - liniové - plošné

TRANSFORMACE OBJEKTOVÉ PETRIHO SÍTĚ Z JAZYKA OPNML DO GRAFU TRANSFORMATION OF OBJECT-ORIENTED PETRI NET FROM OPNML LANGUAGE TO GRAPH

Inovace výuky prostřednictvím šablon pro SŠ

TVORBA MAPY 4. přednáška z GIS1

GIS v regionální analýze a jejich využití na příkladu Moravskoslezského kraje a města Ostravy

Strategie ochrany před negativními dopady povodní a erozními jevy přírodě blízkými opatřeními v České republice

Algoritmizace prostorových úloh

Pro správné zobrazení mapové aplikace je potřeba mít nainstalovaný zásuvný modul Flash Adobe Player.

SPŠS Č.Budějovice Obor Geodézie a Katastr nemovitostí KARTOGRAFIE V GIS PROJEKT -KARTOGRAM

Odpadové hospodářství v ORP Ústí nad Labem

Možnosti tisku v MarushkaDesignu

TECHNOLOGIE ELASTICKÉ KONFORMNÍ TRANSFORMACE RASTROVÝCH OBRAZŮ

SPŠS Č.Budějovice Obor Geodézie a Katastr nemovitostí KARTOGRAFIE V GIS PROJEKT TEMATICKÁ MAPA

Evidence městského mobiliáře v GIS Kompas 3.2

2. přednáška z předmětu GIS1 Data a datové modely

Aplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Ing. Jan Boháček [ÚLOHA 27 NÁSTROJE KRESLENÍ]

Úvod do GIS. Prostorová data I. část. Pouze podkladová prezentace k přednáškám, nejedná se o studijní materiál pro samostatné studium.

Evidence a správa kanalizace v GIS Kompas 3.2

A Konstrukce mapy 15, Mapová osnova ODPO CÍL OTÁZKA VÁHA SKÓRE VĚĎ

Využití ICT techniky především v uměleckém vzdělávání. Akademie - VOŠ, Gymn. a SOŠUP Světlá nad Sázavou

Modulární systém dalšího vzdělávání pedagogických pracovníků JmK v přírodních vědách a informatice CZ.1.07/1.3.10/

Alena Malovaná, MAL305

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

GIS Geografické informační systémy

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA STAVEBNÍ, OBOR GEODÉZIE A KARTOGRAFIE KATEDRA MAPOVÁNÍ A KARTOGRAFIE

Kreslíme do webu. Canvas

Obsah. Funkce grafu Zdrojová data pro graf Typ grafu Formátování prvků grafu Doporučení pro tvorbu grafů Zdroje

Kartografická webová aplikace. Přednáška z předmětu Počítačová kartografie (KMA/POK) Otakar Čerba Západočeská univerzita

Inovace výuky prostřednictvím šablon pro SŠ

Jádrem systému je modul GSFrameWork, který je poskytovatelem zejména těchto služeb:

Téma: Práce se základními objekty, výplní a obrysem

GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY 10

Seminář z geoinformatiky

Přehled kartografické tvorby Zeměměřického úřadu

Kartografické stupnice. Přednáška z předmětu Tematická kartografie (KMA/TKA) Otakar Čerba Západočeská univerzita

Mapa zdroj informací

INFORMATIKA. Grafické studio ve škole

Katedra geoinformatiky Univerzita Palackého v Olomouci

Práce s texty, Transformace rastru, Připojení GPS

Územní plán Ústí nad Labem

V této příloze je podrobně popsána struktura XML dokumentu s mapou (viz kapitolu 5.3), příklad tohoto XML dokumentu je na přiloženém CD v souboru

Webové stránky. 6. Grafické formáty pro web. Datum vytvoření: str ánk y. Vytvořil: Petr Lerch.

Popis funkcí tlačítek jednotlivých modulů programu OGAMA

VY_32_INOVACE_INF.10. Grafika v IT

Vektorový formát SVG

Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1

Pravidla pro tvorbu ÚKM Jihočeského kraje

Kontingenční tabulky v MS Excel 2010

Projekt. Sestavení projektu

Úvod do počítačové grafiky

. Grafika a plovoucí prostředí. Zpracování textů na počítači. Ing. Pavel Haluza, Ph.D. ústav informatiky PEF MENDELU v Brně haluza@mendelu.

Nastavení stránky : Levým tlačítkem myši kliknete v menu na Soubor a pak na Stránka. Ovládání Open Office.org Draw Ukládání dokumentu :

Nápověda k používání mapové aplikace Katastrální mapy Obsah

Kartografické výstupy z GIS

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

VÝVOJ VENKOVSKÝCH SÍDEL V 19. A 20. STOLETÍ: TVORBA ANALYTICKÝCH MAPOVÝCH VÝSTUPŮ

GIS. Cvičení 3. Sběr vektorových dat v ArcGIS

TECHNICKÉ POŽADAVKY NA FORMU SDĚLENÍ OBCE SPRÁVCI REGISTRU

Konverze grafických rastrových formátů

VY_32_INOVACE_INF4_12. Počítačová grafika. Úvod

Hardware Různé počítačové platformy (personální počítače, pracovní stanice, víceuživatelské systémy) Požadavek na konkrétní vstupní a výstupní zařízen

Geografické informační systémy #10

internetu v rámci výuky

SPŠS Č.Budějovice Obor Geodézie a Katastr nemovitostí 4.ročník MĚŘICKÝ SNÍMEK PRVKY VNITŘNÍ A VNĚJŠÍ ORIENTACE CHYBY SNÍMKU

XML Š ABLONY A JEJICH INTEGRACE V LCMS XML TEMPLATES AND THEIN INTEGRATION IN LCMS

Počítačová grafika RHINOCEROS

13 Barvy a úpravy rastrového

Obsah. Úvod Barevná kompozice Světlo Chromatická teplota světla Vyvážení bílé barvy... 20

Kartografické vyjadřovací

Práce s plátnem. Vrácení se o krok zpět CTRL+Z Vrácení se o krok vpřed SHIFT+CTRL+Z Duplikace objektu CTRL+D

11 Zobrazování objektů 3D grafiky

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO

IV122 Matematika a programování Úvod kurzu. Radek Pelánek

Obsah. 1 Úvod do Visia Práce se soubory 47. Předmluva 11 Typografická konvence použitá v knize 13

Rasterizace je proces při kterém se vektorově definovaná grafika konvertuje na. x 2 x 1

Praktické použití kartografického software pro tvorbu map OCAD 11

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender

Geografické informační systémy 11. přednáška

K OZA SE PASE NA POLOVINĚ ZAHRADY Zadání úlohy

Základy práce v programovém balíku Corel

Pasport veřejného osvětlení v GIS Kompas 3.2

VÝZKUM APLKACÍ GEOINFORMAČNÍCH TECHNOLOGIÍ V SYSTÉMECH NAKLÁDÁNÍ S ODPADY

Petr Souček Český úřad zeměměřický a katastrální

HTML Hypertext Markup Language

POKROČILÁ KARTOGRAFICKÁ TVORBA v prostředí ArcMap

Technická dokumentace

INFORMAČNÍ SYSTÉMY PRO KRIZOVÉ ŘÍZENÍ GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY A JEJICH VYUŽITÍ V KRIZOVÉM ŘÍZENÍ ING. JIŘÍ BARTA, RNDR. ING.

Vektorové grafické formáty

Transkript:

MASARYKOVA UNIVERZITA V BRNĚ Přírodovědecká fakulta Geografický ústav Martin DVOŘÁK NÁVRH KOMPONENTNÍCH MAPOVÝCH KLÍČŮ PRO WEBOVOU KARTOGRAFII Bakalářská práce Vedoucí práce: Mgr. Karel Staněk, Ph.D. Brno 2006 1

Jméno a příjmení autora: Název bakalářské práce: Martin DVOŘÁK Návrh komponentních mapových klíčů pro webovou kartografii Název v angličtině: Studijní obor (směr): Vedoucí bakalářské práce: Design of component map keys for a web cartography geografická kartografie a geoinformatika Mgr. Karel Staněk, Ph.D Rok obhajoby: 2006 Anotace v češtině Hlavním tématem práce je návrh komponentních mapových klíčů využitelných pro webovou kartografii. Návrh je řešen pomocí grafického vektorového formátu SVG. SVG je jazyk pro popis dvourozměrné grafiky v rozšiřitelném značkovacím jazyce XML. Cílem práce je dokázat vhodnost použitého grafického formátu pro tvorbu mapových symbolů a ukázka znakových sad tímto formátem vytvořených. Součástí práce je také jednoduchá elektronická mapa. Anotace v angličtině The main theme of this work is design of component map keys used in the web cartography. The design was made by the graphic vector format SVG. SVG is a language for describing two-dimensional graphics in XML. This work should demonstrate, that used graphic format is suitable for making map symbols. The work contains sets of map symbols made by SVG and simple electronic map. Klíčová slova v češtině: mapový symbol, SVG, XML, webová kartografie Klíčová slova v angličtině: map symbol, SVG, XML, web cartography 2

Masarykova univerzita v Brně Přírodovědecká fakulta ZADÁNÍ BAKALÁŘSKÉ PRÁCE Student: Studijní program: Studijní obor: Martin Dvořák Geografie a kartografie Geografická kartografie a geoinformatika Vedoucí sekce věd o Zemi PřF MU Vám ve smyslu Studijního a zkušebního řádu MU určuje bakalářskou práci s tématem: Návrh komponentních mapových klíčů pro webovou kartografii Zásady pro vypracování: Předmětem práce je návrh a implementace znakových sad ve formátu XML. Jednotlivé znaky budou mít komponentní a parametrizovatelný charakter, který umožní jejich vizualizaci prostřednictvím grafického jazyka SVG. Součástí práce budou implementované sady značkových klíčů pro topografické prvky a vzorky sad klíčů ze zvolených fyzicko-geografických a geo-demografických tématik. Postup vypracování práce je následující 1) přehled možností a omezení jazyka SVG pro tvorbu kartografické symboliky 2) rešerše existujících přístupů k tvorbě kartografických symbolů v SVG 3) návrh obecné struktury symbolu 4) implementace návrhu do XML 5) návrh konkrétních znakových sad 6) vytvoření jednoduché elektronické mapy demonstrující použití navržených sad 3

Rozsah grafických prací: Rozsah průvodní zprávy: podle potřeby cca 30-40 stran Seznam odborné literatury: Lech Ratajski: Metodyka kartografii spoleczno-gospodarczej, Warszawa, PPWK 1973 www.wsc.org/svg www.kevlindev.com pilat.free.fr Vedoucí bakalářské práce: Mgr. Karel Staněk, Ph.D. Datum zadání bakalářské práce: září 2005 Datum odevzdání bakalářské práce: dle harmonogramu akademického roku 2005/2006 V Brně dne 10. 10. 2005 doc. RNDr. Petr Dobrovolný, CSc. vedoucí sekce VoZ PřF MU Zadání bakalářské práce převzal dne: Podpis studenta 4

Prohlašuji tímto, že jsem zadanou bakalářskou práci vypracoval samostatně pod vedením Mgr. Karla Staňka, Ph.D. a uvedl v seznamu literatury veškerou použitou literaturu a další zdroje. V Brně dne vlastnoruční podpis autora 5

Děkuji tímto Mgr. Karlu Staňkovi, Ph.D za odborné vedení mé bakalářské práce a všem, kteří mně vždy rádi poradili, když jsem je žádal o pomoc. 6

OBSAH 1 ÚVOD... 9 1.1 Cíl práce... 9 1.2 SVG a XML... 9 1.2.1 Scalable vector graphic (SVG)... 9 1.2.2 extensible Markup Language (XML)... 10 2 MAPOVÝ ZNAK... 11 2.1 Definice mapového znaku... 11 2.2 Přístupy ke kartografickým vyjadřovacím prostředkům... 12 2.2.1 Mapová semiotika... 12 2.2.2 Jacques Bertin... 12 2.2.3 Lech Ratajski... 13 2.2.4 Semioticko jazykové koncepce mapy... 14 2.2.4.1 Hansgeorg Schlichtmann... 14 2.2.4.2 Ján Pravda... 14 3 MOŽNOSTI A OMEZENÍ JAZYKA SVG PRO TVORBU KARTOGRAFICKÝCH SYMBOLŮ... 15 3.1 Bodové znaky... 15 3.1.1 Geometrické bodové znaky... 15 3.1.2 Symbolické bodové znaky... 16 3.1.3 Diagramové bodové znaky... 16 3.1.4 Signaturové bodové znaky... 17 3.2 Liniové znaky... 17 3.3 Areálové znaky... 19 4 STÁVAJÍCÍ PŘÍSTUPY K TVORBĚ MAPOVÝCH ZNAKŮ V SVG... 21 4.1 Open Clip Art Library... 21 4.2 Map Symbol Brewer... 22 4.3 Carto.net... 22 4.4 Obecný přehled... 23 5 NÁVRH OBECNÉ STRUKTURY SYMBOLU... 24 5.1 Poloha... 25 5.1.1 Kontejner <metadata>... 25 5.1.2 Vztažný bod... 25 5.2 Tvar... 26 5.3 Atributy... 26 5.3.1 Atribut fill... 26 5.3.2 Atribut stroke... 27 5.3.3 Atribut marker... 28 5.3.4 Transformační atributy... 28 5.3.5 Hyperlinky, skripty a animace... 29 5.3.6 Zachování proporcionality... 31 6 IMPLEMENTACE NÁVRHU DO XML... 31 6.1 Znakové předlohy... 31 6.2 Implementace... 31 6.2.1 Implementace pomocí grafického editoru... 32 6.2.2 Přímý zápis zdrojového kódu... 32 7 NAVRŽENÉ ZNAKOVÉ SADY... 34 7.1 Topografická znaková sada... 34 7.2 Fyzicko geografické znakové sady... 35 7

7.3 Geo demografická znaková sada... 36 8 JEDNODUCHÁ ELEKTRONICKÁ MAPA Z NAVRŽENÝCH SAD... 37 8.1 Export formátu shp do svg... 37 8.2 Vizualizace mapových symbolů... 38 9 ZÁVĚR... 38 10 LITERATURA... 39 11 SEZNAM PŘÍLOH... 41 8

1 ÚVOD 1.1 Cíl práce Cílem práce je navrhnout komponentní sady mapových symbolů použitelných ve webové kartografii. K tomuto účelu byl zvolen formát XML, jenž nabízí v této oblasti široké možnosti. Součástí práce je i zhodnocení stávajících přístupů k tomuto tématu a vytvoření jednoduché elektronické mapy, jako ukázky použití navržených mapových znaků. Protože je celá práce řešena ve značkovacím jazyce XML, jehož součástí je grafický formát SVG, jsou v úvodu zmíněny jejich základní charakteristiky. 1.2 SVG a XML 1.2.1 Scalable vector graphic (SVG) SVG je jazyk pro popis dvourozměrné grafiky v xml. Je standardem konsorcia W3C (www.w3c.org). Rozeznává a pracuje se třemi typy objektů: vektorovými útvary, rastrovými obrázky a textem. Formát SVG podporuje práci s Documnet Object Model (DOM), umožňující využití skriptovacích jazyků. Útvary v dokumentech SVG mohou být interaktivní a je možné je animovat. SVG má mnoho vlastností, které ho předurčují pro využití v kartografii. První a velice podstatnou předností je, že se jedná o vektorový formát. Toto nám umožňuje téměř libovolné zvětšování a zmenšování objektů bez jejich rozostření a tím pádem ztráty informací. Další důležitou vlastností je nastavení souřadnicového systému. Díky tomu můžeme jednotlivé prvky na plátně (canvas) lokalizovat. Při správném využití jeho struktury lze dosáhnout toho, aby výsledný dokument nezabíral příliš místa na disku. K tomu nám poslouží kontejner <defs>. V něm nadefinujeme požadované grafické elementy, jež nejsou vykreslovány na obrazovku, a teprve v okamžiku jejich použití (i vícenásobného) se na ně odkážeme pomocí jednoznačného identifikačního klíče (id), který jsme jim přiřadili v oblasti kontejneru <defs>. Tím je dána vhodnost použití tohoto formátu pro webové aplikace. Formát svg je kompatibilní s běžnými internetovými prohlížeči po stažení tzv. SVG viewer například ze stránek společnosti Adobe. 9

1.2.2 extensible Markup Language (XML) XML (extensible Markup Language), česky rozšiřitelný značkovací jazyk byl vyvinut konsorciem W3C (World Wide Web Consortium) jako pokračování jazyka HTML a SGML. Jazyk je určen především pro výměnu dat mezi aplikacemi a pro publikování dokumentů. Jazyk umožňuje popsat strukturu dokumentu z hlediska věcného obsahu jednotlivých částí, nezabývá se sám o sobě vzhledem dokumentu nebo jeho částí. Prezentace dokumentu (vzhled) se potom definuje připojeným stylem. Další možností je pomocí různých stylů provést transformaci do jiného typu dokumentu, nebo do jiné struktury XML. Původní jazyk pro publikování HTML již přestal vyhovovat především pro svou složitost, která vznikla jeho postupným (a svévolným) rozšiřováním. Jazyk XML nemá žádné předdefinované značky (tagy, názvy jednotlivých elementů) a také jeho syntaxe je podstatně přísnější než HTML. 10

2 MAPOVÝ ZNAK 2.1 Definice mapového znaku Mapový znak chápeme jako libovolný grafický prostředek nebo souhrn grafických prostředků prvotního významu vztahu, jako grafický záznam, který je schopný být nositelem významu, tzn. něco na kartografickém produktu (mapě, plánu, atp.) vyjadřovat o základních prvcích obsahu. (cit. DRÁPELA, M. V., 1983). Mapové znaky můžeme rozdělit na bodové (figurální), liniové a areálové (plošné). Každý znak je přesně určen svými vlastnostmi, velikostí, tvarem, orientací, intenzitou, texturou, barvou a polohou. Polohou se liší kartografické znaky od znaků grafických. velikost tvar intenzita y znak poloha x orientace barva textura Obr. 1. Optické vlastnosti kartografického znaku (převzato FRIEDMANNOVÁ, L., 2005) 11

2.2 Přístupy ke kartografickým vyjadřovacím prostředkům 2.2.1 Mapová semiotika V současnosti je známých několik přístupů ke kartografickým vyjadřovacím prostředkům. Jejich snahou je především kartografické znaky rozčlenit, popsat jejich vlastnosti a určit pravidla jejich tvorby. Dávají tedy jakýsi teoretický podklad oboru, jenž se zpravidla nazývá mapová semiotika. 2.2.2 Jacques Bertin Jedním z prvních, kdo se zabýval touto problematikou byl francouzský kartograf Jacques Bertin. Tvrdil, že mapové znaky tvoří specifický grafický systém a že každý mapový znak má šest proměnných: velikost, intenzitu, texturu, barvu, orientaci a tvar. Těmto proměnným přiřadil pět základních vlastností (asociaci, disociaci, selekci, uspořádání a proporcionalitu), které s předcházejícími šesti proměnnými tvoří 63 kombinací, jež jsou využitelné při sestavování mapových znaků. Lepší představu o Bertinově systému nám podává následující obrázek. 1 Obr. 2. Vlastnosti a parametry kartografického znaku (BERTIN, J., 1976) 12

2.2.3 Lech Ratajski V 70. letech 20. století se systémem kartografických znaků zaobíral polský kartograf Lech Ratajski. Tvrdil, že kartografické znaky reprezentují určité třídy faktů a jevů tzv. prvky obsahu map (řeky, města, teploty apod.). Rozdělil mapové znaky na bodové, čárové a plošné, kterým přiřadil pět kvalitativních forem vyjádření: tvar, orientaci, barvu, texturu a intenzitu. Z kvantitativního hlediska rozlišoval přímé a zprostředkované vyjádření kvantity. 1 Což je nejlépe patrné z jeho schémat. Obr. 3. Kvalitativní charakteristiky mapového symbolu podle L. Ratajského Samostatný mapový znak rozdělil na hlavní morfému a doplňkové morfémy, jež byly představovány různými druhy afixů. Při konstrukci znaků používal dva způsoby kompozice: ekvivalentní a subordinační 1. 13

Obr. 4. Kvantitativní charakteristiky mapového symbolu podle L. Ratajského 2.2.4 Semioticko jazykové koncepce mapy Některé další teorie týkající se kartografických vyjadřovacích prostředků dospěly ve svém vývoji tak daleko, že jejich autoři považují mapové vyjadřování za samostatný jazyk. V těchto případech se jedná o tzv. semioticko jazykovou koncepci mapy. 2.2.4.1 Hansgeorg Schlichtmann Jednu z prvních takto hluboce propracovaných koncepcí vytvořil německý geograf Hansgeorg Schlichtmann a nazval jí mapovým symbolizmem. Při tomto pohledu se každý znak skládá ze dvou částí: obsahové (význam) a grafické. Tyto dvě části jsou spojeny pomocí korelačních pravidel nebo konvencí, jež nazývá kódem. Znaky v mapě nesou několik informací rozdělených do dvou dichotomií. Jde o informace o poloze a od polohy nezávislé, dále potom o základní a lokalizační informace. Všechny mapové znaky dělí na motivované a nemotivované. 1 2.2.4.2 Ján Pravda Metodami kartografického vyjadřování se zaobírá také slovenský vědec Ján Pravda. Svůj přístup nazývá mapový jazyk, který dělí na čtyři další části: mapovou signiku, mapovou morfografii, mapovou syntax a mapovou stylistiku. V rámci této práce jsou nejdůležitější oblasti mapové signiky a morfografie. Mapová signika je podle J. Pravdy rovina mapového jazyka, která se zaobírá definováním mapových znaků, klasifikací mapových znaků, shromažďováním mapových znaků a vyhotovováním přehledů znakové zásoby mapového jazyka. Mapová morfografie je rovina mapového jazyka, která se zaobírá znakotvorbou konstrukcí mapových znaků chápaných jako mapové syntagmy (graficko významové složeniny). Mapová syntagma se skládá z mapových morfém a ty zase z mapových grafém. Složená mapová syntagma je synsyntagma. Při skládání (konstrukci) mapových synsyntagem, syntagem, morfém a grafém se používají tyto morfografické operace: 14

sdružování, skládaní, uspořádaní a rozkládání, spojení, afixace, otočení, převrácení a vyplňování, vzorkování a rastrování, barvení a změna rozměrů. 1 3 MOŽNOSTI A OMEZENÍ JAZYKA SVG PRO TVORBU KARTOGRAFICKÝCH SYMBOLŮ 3.1 Bodové znaky Bodové znaky umožňují vyjádřit určitý jev vyskytující se na daném místě. Dělíme je na geometrické, symbolické, ikonografické, diagramové a signaturové. Pokud bychom chtěli jednotlivým typům bodových znaků přiřadit jeden za tří typů objektů, se kterými pracuje SVG, pak bychom geometrické, symbolické a diagramové bodové symboly vyjádřili pomocí vektorových útvarů (shapes), ikonografické pomocí rastrového obrázku a signaturové pomocí textu. Ikonografické znaky se na klasických mapách příliš nevyskytují, a jejich použití ve webové kartografii je velice sporadické. V následující části textu jsou uvedeny základní možnosti konstrukce bodových symbolů pomocí jazyka SVG. 3.1.1 Geometrické bodové znaky Nejlépe půjdou pomocí jazyka SVG definovat znaky geometrické, poněvadž se skládají z geometrických primitiv a v tomto směru nám tento grafický formát nabízí veliké možnosti. Můžeme pomocí něj definovat základní geometrické tvary jako úsečka (<line>), lomená čára (<polyline>), kružnice (<circle>), obdélník (<rect>), elipsu (<elipse>) a mnohoúhelník (<polygon>). V podstatě všechny předcházející tvary lze definovat pomocí jediného příkazu, kterým je grafický element <path>. Což je obvodová linie, jež může ohraničovat jakýkoliv objekt skládající se z rovné i lomené čáry, části kružnice, elipsy nebo některé z Beziérových křivek. Tento objekt může být jakkoliv vyplněn a i obvodová linie může být libovolná. Z předcházejícího plyne, že je možné v dokumentech SVG provádět základní operace s geometrickými primitivy (sjednocení, průnik, rozdíl) jako při běžném 1 PRAVDA, J.: Mapový jazyk. 2. dopl. vyd., Univerzita Komenského, Bratislava, 2003. 104 s. ISBN 80-223-1809-4. 15

sestavování geometrických bodových značek. Příkladem může být vytvoření značky pro kostel. Který složíme z kružnice <circle> a dvou úseček <polyline>. <symbol id="kostel"> <polyline points="6,0 6,15"/> <polyline points="1,5 11,5"/> <circle cx="6" cy="21" r="5"/> </symbol> Obr. 5. Bodový mapový symbol a jeho zdrojový kód 3.1.2 Symbolické bodové znaky Symbolické bodové znaky budou o něco hůře definovatelné než symboly geometrické, protože se skládají ze složitějších tvarů. Většinou jsou ale lépe vnímány laickou veřejností, díky jejich motivaci jevem, který znázorňují. Nejčastěji jsou používány v tematické kartografii. Laická veřejnost se s nimi setkává především na turistických mapách. Při jejich konstrukci v jazyku SVG použijeme stejných příkazů jako při konstrukci znaků geometrických. Nejvhodnějším bude grafický kontejner <path>, pomocí nějž jdou tyto složitější tvary symbolických znaků nejlépe vyjádřit. Typickým příkladem symbolické motivované značky je znak kotvy pro znázornění přístavu. Jak je uvedeno na následujícím příkladu, skládá se kotva z kružnice a její zbývají část je vykreslena příkazem <path>, zahrnujícím jak krátkou úsečku, tak oblouk kružnice. <symbol id="pristaviste" stroke="aqua"> <circle cx="6" cy="3" r="2"/> <path d="m6,5 l 0,10 m-5,-3 a10,20 0 0,0 10,0"/> </symbol> Obr. 6. Bodový mapový symbol a jeho zdrojový kód 3.1.3 Diagramové bodové znaky Diagramové bodové znaky tvoří další kategorii hojně využívanou především při sestavovaní kartodiagramů a bodově lokalizovaných diagramů. Jedná se v podstatě o různé typy grafů nesoucích charakteristiky určité oblasti nebo místa. Konstrukce grafů v jazyce SVG je poměrně hojná, o čemž se můžeme přesvědčit mnohými aplikacemi na Internetu. Problémem by nemělo být ani překrývání diagramů, které lze snadno vyřešit určením přesného pořadí, ve kterém budou diagramy vykresleny. Zase zde najde největší uplatnění grafický kontejner <path>, jimž je v příkladu nadefinován jednoduchý kruhový diagram. 16

Obr. 7. Bodový mapový symbol a jeho zdrojový kód 3.1.4 Signaturové bodové znaky <symbol> <path d="m300,200 h-150 a150,150 0 1,0 150,-150 z" fill="red" stroke="blue" stroke-width="5" /> <path d="m275,175 v-150 a150,150 0 0,0-150,150 z" fill="yellow" stroke="blue" stroke-width="5" /> </symbol> Signaturové znaky se většinou používají pouze na vědeckých nebo úzce specializovaných mapách. Jedná se o alfanumerické znaky, pro jejichž konstrukci v SVG použijeme objekt <text>. Tento objekt nabízí širokou škálu fontů, stylů, typů a druhů písma, díky čemuž by neměl být problém tyto symboly nadefinovat. Ještě větší možnosti v oblasti textu nabídne stále vyvíjená nová verze SVG s označením 1.2. Z předcházejících odstavců vyplývá, že jazyk SVG nám dává široké možnosti pro tvorbu bodových značek. Dokonce je možné použít podobných postupů jako při konvenčním sestavování. 3.2 Liniové znaky Liniové znaky tvoří další velkou skupinou. Základním hlediskem, podle kterého můžeme liniové prvky dělit je, zda se jedná o pravé nebo nepravé linie. Pravé linie vyjadřují takové prvky, které mají liniový charakter (extrémně protažený v jednom směru) i ve skutečnosti. Jde především o vodní toky, komunikace, elektrické vedení apod. Dále se jedná již pouze o nepravé linie. mezi něž patří linie izarytmické. To jsou čáry spojující množinu bodů o stejné hodnotě znaku. Hraniční linie vymezující plochu se stejnou kvalitativní charakteristikou jevu nebo ohraničující nějaký objekt. A pohybové linie vyjadřující změny určitého jevu s místem a časem, jeho dynamiku a tendenci. Z hlediska konstrukce liniových znaků v jazyce SVG budou podstatnější vlastnosti kartografického znaku (barva, velikost, orientace, textura, tvar, intenzita). Nejhůře v jazyce SVG jde měnit texturu u liniových znaků. Ke konstrukci linií v SVG používáme grafické kontejnery <polyline> a <path>. Oba příkazy mají podobné vlastnosti. Velikost liniového znaku, tedy šířka linie, je snadno měnitelná pomocí atributu stroke-width, barva a intenzita také nabízejí širokou 17

škálu možností. Problematičtější z hlediska možností grafických kontejnerů <polyline> a <path> jsou textury a šrafury linií a složitější linie. Pokud je linie jednoduchá jednobarevná, okraje mají stejnou barvu jako zbytek linie, nemá šrafuru, není podélně členěná a nemá-li složité textury je poměrně snadné takovou linii v SVG vykreslit. Příkladem může být zpevněná cesta znázorněná jednoduchou plnou černou čarou o určité šíři. Obtíže nečiní ani přerušované čáry, i když jsou tvořeny nestejně dlouhými dílky. Jednoduše definovatelné jsou i kartografické značky tvořené dvěmi liniemi. <symbol id="treti_trida"> <use x="0" y="1" xlink:href="#okraje"/> <use x="0" y="5" xlink:href="#okraje"/> </symbol> Obr. 8. Liniový symbol a jeho zdrojový kód Pokud je ovšem kartografická značka znázorněna pomocí barevné linie, jež je lemována tenkými černými čarami (např. silnice I. třídy), musíme v jazyce SVG použít jednu linii jako hlavní podkladovou a pomocí dalších dvou vytvořit okraje (lemy) této hlavní linie. <symbol id="prvni_trida"> <use x="0" y="5" xlink:href="#silnice" strokewidth="8"/> <use x="0" y="1" xlink:href="#okraje"/> <use x="0" y="9" xlink:href="#okraje"/> </symbol> Obr. 9. Liniový symbol a jeho zdrojový kód Tento problém vznikající při tvorbě složitějších linií lze řešit i jinými metodami. Jednou z nich je vykreslení dvou linií o rozdílné tloušťce na sebe. Přečnívající části spodní linie tímto způsobem vytvoří okraje linie vrchní. Toto řešení je výhodnější při následné vizualizaci takovýchto linií v mapovém poli. Ještě obtížněji je definovatelné šrafování doprovázející linie. Toto si můžeme ukázat u kartografického znaku Základní rastrové mapy 1: 10 000 pro opěrnou zeď. Je to jednoduchá plná čára, na níž jsou kolmé krátké čárky nacházející se ve stejném intervalu od sebe z jedné strany. Protože grafické kontejnery pro vyjadřování linií v SVG nemají možnost definování textury, jako je tomu u plošných grafických prvků, je nutné buď každou část (jednu čárku) šrafury nadefinovat samostatně nebo použít na sebe navazující lomené linie ve tvaru písmene L otočeného o 90 v záporném směru. 18

Obr. 10. Liniový symbol a jeho zdrojový kód <path id="zed1" d="m1,4 l 5,0 l 0,-3 m0,3 l 5,0 l 0,-3 m0,3 l 5,0 l 0,-3 m0,3 l 5,0 l 0,-3 m0,3 l 5,0 l 0,-3... /> Podobný případ nastává i pokud se linie skládá z různých jednoduchých tvarů. Klasickým případem mohou být linie skládající se z krátkých čárek a malých kružnic (znak pro hraniční čáru). Zase je nutné použít opakování těchto grafických primitiv v zápise takto definované značky. Naopak vyjádření pohybových linií, pokud by se samozřejmě jednalo o jednoduché linie, jak byly pospány výše, by nemělo činit potíže. Pro tvorbu vektorů, tedy čar v podobě šipky, nám jazyk SVG nabízí široké možnosti. Elementy path, polyline, polygon a line mohou být rozšířeny o vykreslení značky <marker>. 3.3 Areálové znaky K vytvoření areálového mapového znaku budeme postupovat odlišně, pokud tvoříme pouze značkový klíč nebo zda vymezujeme areál v samotné mapě. V mapovém poli bude areál definován pomocí grafického kontejneru <polygon> nebo <path>. V mapovém klíči (legendě) se k znázornění areálů většinou používá pravidelných pravoúhelníků. Plošné tvary nabízejí velké možnosti především v různých typech výplní. Pomocí atributu fill je možné použít jak jednobarevné výplně, tak různé barevné přechody a velké množství textur. Textury si můžeme vytvořit vlastní. Počínaje jednoduchým šrafováním až po složité textury užívané například v geomorfologii. Textury (patterns) si vytvoříme v oblasti kontejneru <defs> a poté se na ni odkazujeme pomocí jejího identifikačního klíče. Při jejím vykreslení do požadoveního obrazce je daná textura přizpůsobena jeho velikosti. Zápis jednoduché textury skládající se z trojúhelníků je uveden v následujícím příkladě. <pattern id="trianglepattern" patternunits="userspaceonuse" x="0" y="0" width="100" height="100" viewbox="0 0 10 10"> <path d="m 0 0 L 7 0 L 3.5 7 z" fill="red" stroke="blue" /> </pattern> Obr. 11. Ukázka textury u areálových symbolů a její zdrojový kód 19

Plynulé barevné přechody (lineargradient) se v kartografii používají při překrytu dvou barevných ploch vyjadřujících různé jevy, aby nedocházelo ke vzniku pseudokategorií. Jejich používání v jazyce SVG se řídí podobnými pravidly, jaké byly uvedeny v případě textur. Přechod z jedné barvy do druhé je naznačen na následujícím příkladě. <lineargradient id="mygradient"> <stop offset="5%" stop-color="#f60" /> <stop offset="95%" stop-color="#ff6" /> </lineargradient> Obr. 12. Ukázka barevného přechodu a zdrojový kód Atribut fill dovoluje nastavit průhlednost, v případě SVG spíše neprůhlednost (opacity), a tak lze mít v mapovém poli i překrývající se areály v případě, že je nutné vyjádřit pro stejné území více jevů. To je v jazyce SVG ošetřeno barevným modelem. Jedná se klasický RGB model rozšířený o tzv. alfa kanál, který právě umožňuje nastavit průhlednost každého bodu, a vzniká tím pádem RGBA model. Grafický formát SVG nabízí široké možnosti tvorby mapových symbolů. Nějvětší omezení představuje konstrukce složitějších liniových prvků, jež je nutné kombinovat z více jednoduchých linií. Podrobněji jsou všechny možnosti jazyka SVG popsány v části zabývající se návrhem obecné struktury symbolu. 20

4 STÁVAJÍCÍ PŘÍSTUPY K TVORBĚ MAPOVÝCH ZNAKŮ V SVG Poněvadž formát SVG má své uplatnění pouze pro digitální aplikace, především internetové, nelze postihnout všechny stávající principy. Proto je následující výběr pouze ukázkový a v žádném případě se nejedná o úplný přehled. 4.1 Open Clip Art Library Na stránkách www.openclipart.org se nachází velké množství obrázků všech kategorií vytvořených pomocí jazyka SVG. Jednu skupinu tvoří mapové symboly. Při bližším prozkoumání zjistíme, že jde spíše o obecně používané symboly pro parkoviště, schodiště, pošty ap. než o znaky použitelné jako kartografické vyjadřovací prostředky. 21

Obr. 13. Internetová stránka s mapovými symboly 4.2 Map Symbol Brewer Map Symbol Brewer je prototyp aplikace k znázorňování mapových symbolů v digitální podobě na monitorech v různých měřítkách. Snaží se vyřešit zachování proporcionality a vůbec vykreslení mapového symbolu ve správné velikosti při proměnlivém přiblížení nebo oddálení části mapového pole. 4.3 Carto.net Na internetových stránkách www.carto.net, které se mimo jiné zabývají problematikou využití formátu SVG v kartografii, je ukázka několika mapových symbolů v SVG. Nalezneme zde ale pouze bodové znaky. 22

Obr. 14. Internetová stránka s mapovými symboly Většina kartografických děl vytvořených ve formátu SVG má podobu map určitého území. Z kartografických vyjadřovacích prostředků jsou používány především kartogramy, kartodiagramy popř. chorochromatické mapy. Samotných souborů mapových symbolů je velice málo a nacházíme spíše jen jejich ukázky. 4.4 Obecný přehled Map sestavených prostřednictvím jazyka SVG je velké množství. Největší zastoupení mají tematické mapy. Výjimkou nejsou ani rozsáhlé soubory tematických map poskytující velké množství informací z různých oborů. Značná část map je také interaktivní a umožňující zobrazování jednotlivých vrstev dle volby uživatele. Velké množství odkazů na internetové stránky obsahující kartografické aplikace vytvořené ve formátu SVG nabízí internetová adresa http://www.svgx.org/cartography/. 23

5 NÁVRH OBECNÉ STRUKTURY SYMBOLU V návrhu obecné struktury symbolu se pokusíme popsat všechny vlastnosti, které může jednotlivá značka nést. Není vždy nutné, aby každá značka měla všechny popisované vlastnosti. Mezi tyto vlastnosti řadíme polohu, velikost, intenzitu, texturu, barvu, orientaci a tvar. 24

Pokusíme se navrhnout obecnou strukturu symbolu na příkladech bodového, liniového a plošného mapového znaku a naznačit všechny vlastnosti, které může mapový symbol nadefinovaný pomocí jazyka SVG mít. 5.1 Poloha První vlastností kartografického znaku je poloha. V jazyce SVG jsou nositelem polohy kartografického znaku atributy x a y. Tyto atributy jsou povinné pro každý grafický element. Ve skutečnosti odpovídají souřadnicím geodetického systému X a Y. 5.1.1 Kontejner <metadata> Abychom mohli přesně určit polohu mapového symbolu musíme nadefinovat souřadnicový systém kartografického zobrazení. Jazyk SVG nabízí několik možností k definici kartografického souřadnicového území. Děje se tomu tak v oblasti kontejneru <metadata>. První možností je odkaz na internetové stránky nabízející výběr z předdefinovaných souřadnicových systémů. Všechny důležité konstanty zobrazení jsou popsány pouze pomocí odkazu na internetovou adresu. Druhou možností je výběr ze souřadnicových systémů implementovaných v jazyce SVG. V tomto případě je zapotřebí znát kód požadovaného souřadnicového systému, název referenčního elipsoidu a číslo edice. Třetí způsob je nejsložitější, ale pokud požadujeme takový souřadnicový systém, na který není dostupný žádný internetový odkaz nebo který není implementovaný v jazyku SVG, je pro nás jedinou možností. Jedná se o vlastní nadefinování souřadnicového systému uvnitř struktury daného SVG souboru. 5.1.2 Vztažný bod U bodových mapových symbolů je jejich přesná poloha vztažena buď ke středu znaku, patě svislice znaku, průsečíku čar nebo ke středu základny dle tvaru každého konkrétního symbolu. V jazyce SVG s těmito pravidly musíme počítat, protože atributy x a y jsou většinou souřadnice bodu, ze kterého je započato vykreslování symbolu. U liniových symbolů se atributy x a y shodují s počátkem linie, tedy bodu od nějž začíná vykreslování. Další důležité body na linii jsou buď určeny pomocí absolutních souřadnic nebo je jejich poloha odvislá od počátečního bodu a je tedy definována relativními souřadnicemi. 25

Areálové mapové symboly umisťujeme do mapového pole podle stejných pravidel jako symboly liniové. 5.2 Tvar Nejprve tedy jednoduchý příklad bodového symbolu. <symbol id="kostel"> <polyline points="6,0 6,15"/> <polyline points="1,5 11,5"/> <circle cx="6" cy="21" r="5"/> </symbol> Obr. 15. Příklad bodového symbolu a zdrojový kód Tento bodový symbol se skládá z několika geometrických primitiv, dvou linií (úseček) a kružnice. Ty jsou v jazyce SVG zastoupeny grafickými kontejnery <polyline> reprezentujícími úsečky a grafickým kontejnerem circle zastupujícím kružnici. Takto můžeme vytvořit jakýkoliv tvar, jak je zmíněno výše v části možnosti jazyka SVG. Tímto postupem určíme požadovaný tvar daného symbolu. 5.3 Atributy 5.3.1 Atribut fill Pokud má být nějaká část symbolu vyplněná barvou nebo šrafurou, je nutné přidat do zápisu symbolu atribut fill. Tento atribut lze použít pro všechny grafické kontejnery (<circle>, <rect>, <ellipse>, <polygon> a <path>), když požadujeme výplň pouze pro část symbolu. Jestliže má celý symbol stejnou výplň je možné atribut fill doplnit do zápisu kontejnerů symbol, g, text ap. Atribut fill nabývá několika rozdílných hodnot. Jednou z nich je přímo nadefinovaná barva zapsaná v pořadí barev určených RGB modelem. <rect id="area" width="100" height="50" fill="rgb(211,254,112)"/> Obr. 16. Příklad použití atributu fill pro barevnou výplň Dalšími jsou odkazy na vzdálené zdroje, které obsahují předefinované barevné odstíny, barevné přechody nebo textury. 26

<rect id="area" width="100" height="50" fill=" url(#linepattern)"/> Obr. 17. Příklad atributu fill pro barevnou šrafuru Fill-opacity udává průhlednost výplně. Nabývá hodnot od 0 do 1. Hodnota 0 značí úplnou průhlednost, hodnota 1, jež je výchozí, poté úplnou neprůhlednost. Jestliže je součástí grafického kontejneru <path> více se překrývajících ploch lze díky atributu fill-rule vyplnit pouze některé z nich. 5.3.2 Atribut stroke Dalším atributem každého nejen grafického kontejneru je stroke. Atribut stroke může nabývat stejných hodnot jako atribut fill. Tentokrát se ale mění vlastnosti obvodové linie u plošných tvarů a linie samotné u liniových prvků. Obr. 18. Příklad atributu stroke <symbol id="pristaviste" stroke="aqua"> <circle cx="6" cy="3" r="2"/> <path d="m6,5 l 0,10 m-5,-3 a10,20 0 0,0 10,0"/> </symbol> Abychom mohli určit tloušťku linie, musíme použít atribut stroke width. Ten nabývá číselné hodnoty (jen nezáporná čísla) odpovídající předem nadefinovanému souřadnicovému systému. Atribut stroke-linejoin určuje průběh styku konců dvou linií. Význam jednotlivých hodnot je nejlépe patrný z obrázku. Obr. 19. Přehled hodnot atributu stroke-linejoin Podobně lze měnit i zakončení linie. K tomu slouží atribut stroke-linecap, který může nabývat tří následujících hodnot butt, round a square. 27

Obr. 20. Přehled hodnot atributu stroke-linecap Stroke-miterlimit omezuje zašpičatění linií konců linií svírajících ostrý úhel. Jestliže se znak skládá z části, jež není tvořena plnou čarou je možné využít atribut stroke-dasharray. Stroke-dasharray jednoznačně udává velikost plného tahu a přerušení, z nichž se čára sestává. Největší uplatnění tohoto atributu nalezneme u tvorby čárkovaných a čerchovaných liniových symbolů. Stroke-dashoffset - definuje posun vzoru čárkování vůči počátečnímu bodu vektorové cesty, výchozí hodnotou je 0. Atribut stroke-opacity má stejné vlastnosti jako fill-opacity. 5.3.3 Atribut marker Především u pohybových liniových symbolů je samotná čára rozšířena o značky vyjadřující směr pohybu nebo změny. Doplnění této značky libovolného tvaru k vektorovému objektu umožňuje atribut marker. Musí se u něj nastavit souřadnicový systém (markerunits), v němž bude marker vykreslen, referenční bod (refx, refy), což je místo přiložení markru k danému útvaru, šířku a výšku (markerwidth a markerheight) a orientaci (orient). Marker vytvářející z linie vektor by mohl mít následující tvar. <marker id="triangle" viewbox="0 0 10 10" refx="0" refy="5" markerunits="strokewidth" markerwidth="4" markerheight="3" orient="auto"> <path d="m 0 0 L 10 5 L 0 10 z" /> </marker> <path d="m 1000 750 L 2000 750 L 2500 1250" fill="none" stroke="black" stroke-width="100" marker-end="url(#triangle)" /> Obr. 21. Příklad použití atributu marker. 5.3.4 Transformační atributy Atribut, jenž nám umožňuje ovlivnit hlavně velikost a orientaci, se v jazyce SVG nachází pod názvem transform. Hodnotami atributu transform je několik 28

transformací. První je matrix(a,b,c,d,e,f), což obecná transformační matice uvedená na následujícím obrázku. Obr. 22. Obecná transformační matice Další je translate(tx, ty), kde tx a ty jsou hodnoty posunu podle osy x nebo y. Pro zvětšení nebo zmenšení měřítka se užívá hodnota scale(sx,sy). Pokud je uvedena pouze jedna hodnota, prohlížec předpokládá, že jsou stejné. Daný prvek se tedy zvětší ve směru osy x i y stejně. Rotate(úhel [x y]), pootočí prvek o jakýkoliv úhel v kladném nebo záporném směru podle středu otočení [x y]. Pokud není střed rotace nadefinován, je prvek pootočen podle bodu [0 0]. <symbol id="sachta"> <path d="m1,3 l2,-2 l6,0 l0,4 l-6,0 z" fill="black"/> <path d="m6,4 l0,8"/> <path d="m12,14 l2,-2 l0,-6 l-4,0 l0,6 z" fill="black"/> <path d="m2,8 l8,0"/> </symbol> <use x="0" y="0" xlink:href="#sachta" transform="translate(38 200) rotate(180)"/> Obr. 23. Příklad použití atributu transform Atribut transform při zadané hodnotě skewx(úhel) nebo skewy(úhel) skosí prvek podle osy x nebo y dle požadovaného úhlu. Všechny výše popsané funkce jsou důležité při tvorbě běžných analogových mapových symbolů. Mapový znak určený pro webovou kartografii může být rozšířen o další možnosti, jež nám grafický formát SVG nabízí velké množství. 5.3.5 Hyperlinky, skripty a animace Každý samostatný prvek v jazyce SVG může být nositelem hyperlinku. Každý mapový symbol tedy může být odkazem na nějaký jiný zdroj informací. Takovýmto 29

zdrojem můžou být například jiné internetové stránky doplňující informace k danému místu. Pokud je mapový znak tvořen z více grafických primitiv je odkaz aktivní pro každou část a tedy i celý znak dohromady. <a xlink:href="http://www.w3.org"> <ellipse cx="2.5" cy="1.5" rx="2" ry="1" fill="red" /> </a> Obr. 24. Příklad odkazu na internetové stránky Jak bylo již zmíněno výše grafický formát SVG podporuje skriptování. Na mapový symbol může být vázán skript, kdy například po přechodu kurzoru myši nebo po kliknutí myší na daný symbol je vyvolán požadovaný příkaz. Příkladem může být například mapa výsledků voleb do německého Bundestagu. Mapa Německa je rozčleněna do volebních obvodů. Při přejetí kurzoru myši přes daný obvod se mimo mapové pole objeví výsledky voleb v daném obvodu. Umístit diagram s výsledkem voleb do každého volebního obvodu by v postatě ani nešlo. Pomocí kontejneru <script> se mapa stává přehlednější a nabízí mnohem více možností. 30

Obr. 25. Mapa voleb do německého Bundestagu. Pomocí kontejneru <animate> můžeme tvořit v jazyce SVG animace. Mapový symbol nemusí být statický, může se stát součástí animace. 5.3.6 Zachování proporcionality Pokud dochází k zvětšení nebo zmenšení měřítka mapy, tedy zoomování dokumentu SVG je nutné vyladit proporcionalitu mapových symbolů s měnícím se měřítkem. Ve většině případů požadujeme, aby se mapový znak zmenšil, zatímco se zvětšuje měřítko mapového pole. A naopak, když se měřítko mapy zmenšuje, aby mapový symbol byl vizualizován v požadované velikosti odpovídající danému měřítku. V grafickém formátu SVG lze tento problém řešit pomocí skriptu, tedy jednoduchého programu. Tento skript se spustí, pokud začneme dokument zoomovat zvětšovat nebo zmenšovat měřítko. Je založen na principu porovnávání měřítka mapy zobrazené po zvětšení nebo zmenšení mapy výchozí. Podle tohoto klíče transformuje skript mapový symbol do velikosti, jež je pro dané měřítko nadefinována. 6 IMPLEMENTACE NÁVRHU DO XML V této části se pokusíme převést mapové symboly do XML. Využijeme všechny poznatky popsané v předchozích částech a porovnáme výsledek s analogovými mapovými klíči, jež sloužily jako předlohy. 6.1 Znakové předlohy Jako předloha pro topografické mapové symboly bylo použito znakové sady Českého úřadu zeměměřického a katastrálního pro Základní mapu 1: 10 000. Tato znaková sada je volně dostupná na internetových stránkách www.cuzk.cz ve formátu Graphic Interchange Format (gif) a je složena ze tří samostatných souborů. 6.2 Implementace Pro samotnou implementaci přichází v úvahu více postupů. V rámci této práce byly vyzkoušeny dvě metody. Obě mají své výhody a nevýhody. 31

6.2.1 Implementace pomocí grafického editoru První postup, který se nabízí je v podstatě velice snadný. Na Internetu je v současné době volně ke stažení několik grafických editorů, které umožňují vytvářet grafické soubory ve formátu SVG. Jedním z nich je program Inkscape ve verzi 0.42. Tento software nabízí velice podobné rozhraní jako většina jiných grafických programů. Ale protože je určen pro tvorbu grafiky v SVG, má několik odlišností. Všechny grafické celky se skládají z jednoduchých geometrických tvarů (linie, kruh, elipsa, obecná čára apod.) a jsou zároveň popsány jazykem XML vytváří tzv. zdrojový kód. Nabízí se tedy možnost mapové symboly pouze nakreslit a použít nabízený zdrojový kód. Velkou nevýhodou při tomto postupu je forma vytváření zápisu XML kódu. Program Inkscape vytváří složitý a nepřehledný zápis, který je pro další úpravy téměř nepoužitelný. Každému kontejneru je přiřazeno velké množství atributů, z nichž většina není potřebná a nese tedy hodnotu nula. Z tohoto důvodu bylo od zdánlivě jednoduchého postupu odstoupeno. 6.2.2 Přímý zápis zdrojového kódu Postup implementace znakových sad do SVG, jenž byl použit v této práci, je založen na přímém zápisu zdrojového kódu a následné vizualizaci jednotlivých mapových symbolů. Procedura převodu mapových symbolů byla následující. Nejdříve byla vytvořena základní struktura dokumentu. K definici jednotlivých symbolů byla použita oblast kontejneru <defs>, kde nedochází k přímému vykreslování na plátno (canvas). Grafické kontejnery, pomocí nichž byl zadán tvar konkrétního mapového znaku, byly seskupeny uvnitř kontejneru <symbol>. Tak se stal symbol jednotný, bylo mu přiděleno id a šly měnit vlastnosti (barva výplně, tloušťka čáry aj.) celého symbolu najednou. Pro vizualizaci mapový znaků na plátno byl použit příkaz <use> s odkazem na id konkrétního znaku. Základním krokem je převedení tvaru mapového znaku. Mapové symboly jsou v legendě řazeny do tříd, proto lze pro znaky patřící do stejné třídy nadefinovat pouze základní tvar. U liniových symbolů jde o základní čáru danou grafickým kontejnerem <polyline> nebo <path>. Tato základní linie je předdefinována v oblasti kontejneru <defs> (<polyline id="silnice" points="0,0 165,0" stroke="yellow"/>) a jednotlivé symboly jsou tvořeny pouze odkazy na tuto linii (<use x="0" y="5" xlink:href="#silnice" stroke-width="8"/>). Jejich výsledná podoba je pak určena 32

atributy měnícími barvu, šířku a texturu. Například silnice první a druhé třídy se od sebe liší pouze tloušťkou linie, není tedy nutné definovat pro každý symbol základní linii znovu. <polyline id="silnice" points="0,0 165,0" stroke="yellow"/> <symbol id="prvni_trida"> <use x="0" y="5" xlink:href="#silnice" stroke-width="8"/> <use x="0" y="1" xlink:href="#okraje"/> <use x="0" y="9" xlink:href="#okraje"/> </symbol> <symbol id="druha_trida"> <use x="0" y="3" xlink:href="#silnice" stroke-width="4"/> <use x="0" y="1" xlink:href="#okraje"/> <use x="0" y="5" xlink:href="#okraje"/> </symbol> Je-li linie rozšířena o lemovku popř. o jiný doplňující prvek, stačí ho již jen dodat k základnímu zápisu daného mapového symbolu. Pro bodové symboly muselo být použito jiného postupu. Bodové symboly jsou z větší části tvarově značně odlišné, zvláště pak na topografických mapách. Nedalo se u nich použít předdefinování nějakého základu, u kterého by posléze stačily změnit jen atributy. Každý bodový znak musel být vytvořen samostatně prostřednictvím výše popsaných postupů. Poté stačilo již jen doplnit atributy určující barvu výplně a obrysu. Převod areálových mapových symbolů do XML se ve své podstatě skládal pouze ze dvou částí. První bylo nadefinování tvaru mapového symbolu v legendě, což byl ve všech případech obdélník (<rect id="area" width="100" height="50" strokewidth="1"/>). Jednotlivé mapové symboly se pak od sebe liší pouze barvou nebo texturou podle konkrétního významu. Některé mapové symboly jsou v legendě znázorňovány společně s jinými mapovými symboly, aby byl lépe pochopitelný jejich význam. Takovéto mapové znaky jsou vytvořeny pouze z odkazů na již stávající mapové symboly a není nutné je celé definovat znovu <desc>most</desc> <use x="190" y="392" xlink:href="#prvni_trida"/> <use x="210" y="390" xlink:href="#most"/> <use x="0" y="0" xlink:href="#most" transform="translate(236 404) rotate(180)"/> <use x="0" y="0" width="50" height="50" xlink:href="#zelez1" transform="translate(300 415) rotate (-45)"/> <use x="0" y="0" xlink:href="#most" transform="translate(309 402) rotate(-45)"/>/> <use x="0" y="0" xlink:href="#most" transform="translate(334 391) rotate(135)"/> 33

7 NAVRŽENÉ ZNAKOVÉ SADY Výše popsanými postupy byly postupně navrženy znakové sady pro topografické mapy, fyzicko-geografické a geo demografické mapy. 7.1 Topografická znaková sada V oblasti topografických map existuje pro území České republiky několik sad běžně užívaných mapových znaků. K hlavním patří především znaková sada pro vojenské topografické mapy a znaková sada pro základní mapu vydávanou Českým úřadem zeměměřickým a katastrálním. Kartografické symboly užité v těchto mapových dílech jsou všeobecně známé, a proto není součástí této práce návrh úplně nových znakových sad pro tyto typy map. Díky volné dostupnosti kompletního značkového klíče pro Základní mapu 1: 10 000 na internetových stránkách ČÚZK v grafickém formátu GIF, byl právě tento soubor mapových symbolů použit jako předloha pro topografickou znakovou sadu uvedenou v této práci. 34

Na následujícím obrázku je část znakové sady vytvořené pomocí jazyka SVG a pro porovnání stejná část znakové sady stažená z internetových stránek ČÚZK. Kompletní znaková sada je umístěna v obrazové příloze 1. Sada z SVG Sada ČÚZK Obr. 26. Srovnání znakových sad 7.2 Fyzicko geografické znakové sady Nejčastěji používanými kartografickými vyjadřovacími prostředky na fyzicko geografických tematických mapách jsou barevné škály znázorňující intenzitu určitého jevu (např. průměrné roční úhrny srážek), často kombinované s digramem nebo grafem, doplňujícím další charakteristiky sledovaného jevu. Další velice častou metodou je forma chorochromatické mapy, kde jsou různými barevnými odstíny či rastry odlišeny rozdílné kvalitativní charakteristiky (např. půdní typy, klimatické pásy ap.). Součástí této práce je znaková sada pro znázornění velkoplošných chráněných oblastí na území České republiky. Jednotlivá chráněná území jsou znázorněna areálovými symboly, pro jejichž odlišení byla vybrána čarová textura. 35

Obr. 26. Fyzicko-geografická znaková sada Další tematikou, pro kterou byly vytvořeny mapové symboly pomocí jazyka SVG, jsou klimatické poměry světa. V této mapové sadě se kromě barevné škály, nachází i mapové znaky kombinující kontejner <text> s dalšími grafickými kontejnery. Obr. 27. Znaková sada pro fyzicko-geografické mapy (část 1) Obr. 28. Znaková sada pro fyzicko-geografické mapy (část 2) 7.3 Geo demografická znaková sada Na mapách s geo demografickou tematikou se nejčastěji setkáme s jevy, jež jsou znázorněny metodami kartogramu nebo kartodiagramu. Nejčastěji se metoda kartogramu z této oblasti vyskytuje v souvislosti s hustotou zalidnění. V rámci této práce byl sestaven značkový klíč pro hustotu zalidnění v okresech České republiky. 36

Obr. 29. Znaková sada pro geo-demografickou mapu 8 JEDNODUCHÁ ELEKTRONICKÁ MAPA Z NAVRŽENÝCH SAD K potvrzení uplatnění a využitelnosti navržených znakových sad byly vytvořeny jednoduché elektronické mapy. Hlavním významem těchto map bylo demonstrovat možnosti formátu SVG při tvorbě mapových symbolů. Jako předlohy k vizualizaci posloužil list vojenské topografické mapy 1: 25 000, vybrané mapy ze školních atlasů, vrstvy z ArcCR 500 a data z ArcIMS a WMS serverů. Původním formátem všech dat byl shapelfile (shp). Proto bylo nejdříve nutné data z tohoto formátu exportovat do SVG. 8.1 Export formátu shp do svg K exportu mapových vrstev z formátu shp do SVG byl použit software společnosti ESRI ArcGIS 9.0 a open source software OpenJump 1.0. Postup exportu i následné výsledky byly u obou použitých programů velice podobné. Oba výše uvedené programy obsahují extenzi k exportu formátu shp do svg. Extenze ArcGIS 9.0 převede jakoukoliv geometrii z formátu shp do grafického kontejneru <path>. Zachovány jsou 37

všechny vertexy i vektorová forma, takže vizuálně vypadají mapy v obou formátech téměř úplně stejně. Nejdříve byly do předem uvedených softwarových prostředí přidány všechny poskytnuté vrstvy. Následně bylo potřeba změnit vlastnosti jednotlivých bodových, liniových a plošných témat, aby vznikla pouze obrysová mapa. U všech prvků byla nastavena stejná barva obrysové linie (černá), stejná tloušťka linie a žádná výplň u areálových znaků. 8.2 Vizualizace mapových symbolů Nově vzniklý soubor SVG obsahoval pouze geometrii. Podle příslušnosti k jednotlivým třídám prvků byly grafické kontejnery <path> sloučeny pomocí kontejneru <g>. Takto vzniklým skupinám byly přiřazovány vizuální vlastnosti jednotlivých mapových symbolů. Vykreslování jednotlivých symbolů na obrazovku se odehrávalo v následujícím pořadí: nejdříve areálové symboly, poté liniové symboly a úplně svrchní vrstvu tvoří symboly bodové. Zároveň bylo dodrženo, aby jednotlivé situace protínání více prvků odpovídaly skutečnosti. 9 ZÁVĚR V rámci této práce měly být navrženy sady komponentních mapových symbolů použitelných ve webové kartografii. Proto byl zvolen grafický formát SVG, který je přímo doporučován konsorciem World Wide Web pro takovéto aplikace. Práce se nejdříve zaobírá samotnou definicí mapového znaku a zmiňuje některé přístupy k tvorbě analogových mapových symbolů. Následně porovnává možnosti a omezení jazyka SVG související s touto problematikou. Díky tomu mohla být navržena obecná struktura mapového symbolu a následně i celé sady kartografických znaků. Pro názornost byla zkonstruována znaková sada užívaná na topografických mapách a sady určené pro fyzicko-geografické a geo-demografické mapy. Vybrané sady byly použity na jednoduché elektronické mapě, která měla ukázat možnosti vizualizace těchto symbolů. Jedna kapitola se zabývá i některými již existujícími knihovnami mapových symbolů vytvořených v SVG. Tyto mohou následně sloužit k porovnání se symboly vytvořenými pro tuto práci. 38

Doufám, že se mně podařilo splnit zadaný úkol a že 10 LITERATURA PRAVDA, J.: Mapový jazyk. 2. dopl. vyd., Univerzita Komenského, Bratislava, 2003, 104 s. ISBN 80-223-1809-4. HOJOVEC, V.: Kartografie. 1. vyd., Geodetický a kartografický podnik, Praha, 1987, 660 s. ČAPEK, R.: Geografická kartografie. 1. vyd., Státní pedagogické nakladatelství, Praha, 1992. 373 s. ISBN 80-04-25153-6. DRÁPELA, M. V.: Vybrané kapitoly z kartografie. 1. vyd., Státní pedagogické nakladatelství, Praha, 1983, 128 s. ČERBA, O.: Kaskádové styly v digitální kartografii. In: Mapa v informační společnosti. 1. vyd., Univerzita obrany, Brno, 2005, s. 69. KLÍMOVÁ, Eva, et al.: Školní atlas České republiky. 1. vyd, : Geodézie ČS, a. s., Praha 1999, 114 s. ISBN 80-85897-39-3. Školní atlas světa. 5. vyd., Kartografie Praha, a. s., Praha 1995, 146 s. ISBN 80-7011- 323-5. 39

SVG :: Cartography [on-line] <http://www.svgx.org/cartography/> Interval.cz -- Kurz SVG - struktura dokumentu, zobrazovací a vykreslovací model [on-line] <http://interval.cz/clanky/kurz-svg-struktura-dokumentu-zobrazovaci-a-vykreslovacimodel/> INKSCAPE. Draw freely [on-line] <http://www.inkscape.org/> ČÚZK [online] <http://www.cuzk.cz/dokument.aspx?prareskod=998&menuid=0&akce=do C:30-ZU_MAP_ZNAC> SVG page [on-line] <http://svg.webzdarma.cz/> BAXA, T.: Kurz SVG [on-line] <http://www.tbaxa.wi.cz/kurz%20svg.doc> BAXA, T.: Průvodce SVG [on-line] <http://www.tbaxa.wi.cz/pruvodce%20svg.doc> Scalable Vector Graphics (SVG) [on-line] <http://www.w3.org/graphics/svg/> Scalable Vector Graphics (SVG) 1.1 Spefication [on-line] <http://www.w3.org/tr/svg11/> 5-Bertin.sm.jpg [on-line] <http://graphics.stanford.edu/courses/cs448b-04-winter/images/5-bertin.sm.jpg> Open Clip Art Library :: openclipart.org :: Drawing Together. [on-line] <http://www.openclipart.org/cgi-bin/navigate/signs_and_symbols/map_symbols> carto:net - Cartographic symbol collection [on-line] 40

<http://www.carto.net/papers/svg/samples/cartographic_symbols.shtml> Map Symbol Brewer [on-line] http://svgconference.com/svg_2004/2004/paperabstracts/mapsymbolbrewer.html On-line Atlas zur Bundestagswahl 2005 [on-line] <http://www.bundeswahlleiter.de/bundestagswahl2005/onlineatlas/btwclientcarte.htm> FRIEDMANNOVÁ, L.: Přednášky k předmětu Z8118 Tvorba tematických map. 2006. [on-line] <https://is.muni.cz/auth/dok/rfmgr.pl?fakulta=1431;obdobi=3062;studium=134027;kod =Z8112;furl=%2Fel%2F1431%2Fpodzim2005%2FZ8112%2Fum%2F;info=> FRIEDMANNOVÁ, L.: Přednášky k předmětu Z8112 Kartografická vizualizace. 2005. [on-line] <https://is.muni.cz/auth/dok/rfmgr.pl?fakulta=1431;obdobi=3063;studium=134027;kod =Z8112;furl=%2Fel%2F1431%2Fjaro2006%2FZ8118%2F> 11 SEZNAM PŘÍLOH Příl. 1. Ukázka zdrojového kódu znakové sady Příl. 2. Znaková sada pro topografickou mapu Příl. 3. Jednoduché elektronické mapy [cd-rom] 41

Příl. 1. Ukázka zdrojového kódu znakové sady <?xml version="1.0" standalone="no"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/graphics/svg/1.1/dtd/svg11.dtd"> <svg width="800" height="801" xmlns="http://www.w3.org/2000/svg" version="1.1"> <defs> <rect id="obdelnik" x="1" y="1" width="20" height="15" fill="grey"/> <path id="strom" d="m0,0 l -3,15 l 6,0 z m0,15 l 0,3 l 3,0"/> <polyline id="vedeni" points="1,1 150,1"/> <rect id="stozar" width="4" height="4" fill="black"/> <circle id="st_produkt" cx="1" cy="1" r="2"/> <rect id="pas" width="6" height="4" fill="black"/> <rect id="area" width="100" height="50" stroke-width="1"/> <pattern id="mocal" patternunits="userspaceonuse" x="0" y="0" width="100" height="5"> <polyline points="0,0 100,0" stroke="aqua"/> </pattern> <symbol id="mustek"> <polyline id="lmustek" points="0,0 3,3 18,3 18,8 3,8 0,11" /> </symbol> <symbol id="kriz"> <path id="kriz" d="m5,0 l0,20 l5,0 m0,-15 l-10,0"/> </symbol> <symbol id="kostel"> <polyline points="6,0 6,16"/> <polyline points="1,5 11,5"/> <circle cx="6" cy="21" r="5"/> 42

</symbol> <symbol id="kaple"> <polyline points="4,0 4,10"/> <polyline points="1,5 7,5"/> <circle cx="4" cy="13" r="3" fill="black"/> </symbol> <symbol id="pomnik"> <path d="m9,14 l 0,-10 a3,3 0 0,0-6,0 l 0,10"/> <polyline points="1,14 11,14" stroke-width="1.5"/> </symbol> <symbol id="sachta"> <path d="m1,3 l2,-2 l6,0 l0,4 l-6,0 z" fill="black"/> <path d="m6,4 l0,8"/> <path d="m12,14 l2,-2 l0,-6 l-4,0 l0,6 z" fill="black"/> <path d="m2,8 l8,0"/> </symbol> <symbol id="vmotor"> <path d="m11,2 l 0,30 l 8,0 m-18,-30 l 20,10 m0,-10 l -20,10"/> </symbol> </defs> <desc>louka</desc> <use x="200" y="480" xlink:href="#louka"/> <desc>lesni puda se stromy</desc> <use x="200" y="540" xlink:href="#lesni_pudas"/> <desc>lesni puda s krovinatym porostem</desc> <use x="200" y="600" xlink:href="#lesni_pudakp"/> <desc>lesni puda s kosodrevinou</desc> <use x="310" y="180" xlink:href="#lesni_pudak"/> <desc>lesni prusek</desc> <use x="310" y="240" xlink:href="#lesni_prusek"/> <desc>bazina</desc> <use x="310" y="300" xlink:href="#bazina"/> </svg> Příl. 2. Znaková sada pro topografickou mapu 43

Příl. 2. Znaková sada pro topografickou mapu 44