|
JOSM - Tvorba vlastních předvolebV předchozí kapitole ja se nabídky vlastních předvoleb přidávají do JOSM. V této kapitole si vytvoříme vlastní soubor předvoleb. VAROVÁNÍ! Toto je téma pro pokročilé… berte toto varování na vědomí! Úvod do XMLNež si vytvoříme vlastní nabídku předvoleb, nejdříve musíte porozumět tzv. jazyku XML. Pokud jej znáte, klidně přeskočte na další sekci. XML je zkratka pro Extensible Mark-up Language, počítačový jazyk podobný HTML. Hlavní rozdíl je, že XML data nese a HTML je zobrazuje. Mnoho aplikací na internetu využívá XML k přenosu dat, stejně jako OpenStreetMap. XML používá elementy a každý element může obsahovat podřízené elementy. Například si představte, že chcete vytvořit XML soubor, který obsahuje data o menu v restauraci. Musíte vytvořit křenový element, který obsahuje všechny data z našeho menu. Kořenový element má třeba takovou otevírací a uzavírací značku?
V elementu je uložena informace, ale také může obsahovat další elementy.
V tomto příkladu jsme vložili dva elementy <item> do našeho <menu> elementu, abychom popsali dvě různé položky v našem menu. Každá položka obsahuje dva další elementy, <cost> a <description>. Všimněte si také zápisu name=”Hamburger” uvnitř otevírací značky <item>. XML terminologie
Využítí XML k ukládání a přenosu dat je skvělé, protože počítače tomuto jazyku rozumí. Soubory předvoleb v JOSMPojďme přidat ukázkový soubor předvoleb do JOSM a prozkoumejme, jak to funguje.
Ve formuláři, který se objevil, si všimněte, že každé pole očekává jiný typ vstupu. První Name of Building přijímá textové řetězce. Druhé Building Use má rozevírací seznam. A poslední je zaškrtávací políčko, takže může nést pouze dvě různé hodnoty, zapnuto nebo vypnuto. Teď se podívejme na XML soubor, který definuje tento formulář Predvoleb.
Prozatím přeskočíme prvních 6 a poslední řádek a zaměříme se na všechno mezi značkami <item>. První řádek vypadá takto:
Jde o otevírací značku položky, která je přidána do nabídky. Má dva atributy - název a typ. Pod tímto názvem se položka objeví v nabídce Předvolby. Typ omezuje předvolbu na určité typy objektů. V tomto příkladu, může být předvolba aplikována pouze na body a tvary - jinými slovy uzly a uzavřené cesty. Předvolba nepůjde aplikovat na čáru. Podívejme se na další řádek:
Když kliknete na nabídku a otevřete si ukázkový formulář, v horní části bude text Building Form. Tento text je definován právě na tomto řádku. Definuje se použitím elementu <label>, který prostě zobrazí text ve formuláři. Text je definován atributem text=”some text”. Přesuneme se o pár řádků níž na:
Toto je jedna ze značek, které budou aplikovány na objekt, který je vybraný. Protože používá element <key>, tak se tato OSM značka automaticky nastaví, při každém výběru této předvolby. Proto tento objekt automaticky obdrží značku building=yes. Následující řádek je trochu jiný, používá element <text>.
Element <text> vytvoří prázdné pole. Když se formulář v JOSM objeví, uživatel dostane možnost toto pole vyplnit. Protože je nastaven atribut delete_if_empty=”true”, žádná značka se nepřidá, pokud uživatel nechá pole prázdné. Rozbalovací seznam z formuláře je definován v tomto řádku:
Rozbalovací seznam je definován elementem <combo>. Stejně jako u elementu <text> atribut key definuje značku key. Jeho hodnota je pak vybrána ze seznamu možností values. Atribut display_values vám umožňuje zvolit jiné názvy v rozbalovacím seznamu, které mohou být srozumitelnější než hodnoty OSM značek. Nakonec se podíváme na řádek, který definuje zaškrtávací políčko.
Element <check> definuje - hádejte co! - zaškrtávací políčko. Atribut default=”off” znamená, že ve výchozím stavu bude nezaškrtnuté. Ostatní atributy už znáte. Vytváříme si vlastní soubor předvolebNejlepší způsob vytváření vlastního souboru předvoleb, je použitím již existujícího a naplněním vlastními objekty. Klidně si upravte tento ukázkový soubor a experimentováním se naučte základy. Jen si zapamatujte, že po každém uložení je potřeba restartovat JOSM, aby se změny aplikovaly. Než začnete vytvářet vlastní předvolby, je potřeba si pečlivě promyslet značky, které použijete. Vymýšlení nových značek je už zcela jiné téma. Obvykle byste měli používat stávající značky OSM, pokud existují. Většina existujících značek najdete v seznamu na stránce Map Features v OSM Wiki. Tento ukázkový soubor obsahuje většinu elementů, které naleznete v JOSM souboru předvoleb - neobsahuje mnoho formulářových elementů. Jestli chcete experimentovat s komplexnějším souborem, stáhněte si soubor dhaka_presets.xml. Dále je možné nalézt podrobný popis všech možných elementu zde. Hodně štěstí!
Byla tato kapitola užitečná?
Napište nám a pomozte vylepšit naše návody!
|