Geokuk - tvorba vlastních ikon: Porovnání verzí
(→Princip zobrazování ikon) |
(→Umístění ikon) |
||
Řádka 128: | Řádka 128: | ||
* '''y14''' - X na střed, , Y na pozici 14. | * '''y14''' - X na střed, , Y na pozici 14. | ||
* '''x8_y20''' - X na pozici 8 a Y na pozici 20. | * '''x8_y20''' - X na pozici 8 a Y na pozici 20. | ||
+ | |||
+ | |||
+ | == Jednoduchý příklad definice vlastní sady == | ||
+ | Protože mám k dispozici GPX soubor se stanicemi pražské MHD, rozhodl jsem se je zobrazit. Zadal jsem si tedy | ||
+ | kořenový adresář a v nem vytvořil strukturu '''map/MHD''' a v něm vytvořil textový soubor '''skla.txt''' obsahující řádky | ||
+ | |||
+ | skloNormal.VSE | ||
+ | skloZvyrazneni.MYS | ||
+ | skloNormal.MYS | ||
+ | |||
+ | (Netuším, co znamenají ty přípony, ale opsal jsem to z jakési dokumentace od autora ???) | ||
+ | |||
+ | Pak jsem vytvořil adresáře '''skloNormal''' a '''skloZvyrazneni''' (v adresáři MHD) a další soubor '''groups.properties'''. | ||
+ | Do tohoto souboru jsem zapsal jediný řádek | ||
+ | |||
+ | mh!=MHD | ||
+ | |||
+ | kterým jsem definoval nový typ kešoidu. V adresáři '''skloNormal\2ctverce''' jsem vytvořil soubor '''_mh_actv_nomouse_p7_h16_v16.properties''' s následujícím obsahem: | ||
+ | |||
+ | class=cz.geokuk.api.mapicon.RoundRectDrawer | ||
+ | width=16 | ||
+ | height=16 | ||
+ | fill=255,255,255 | ||
+ | |||
+ | Tím jsem definoval velikost zobrazených ikon. V adresáři '''skloNormal\5typy''' jsem vytvořil soubory s ikonami jednotlivých typů zastavek: | ||
+ | |||
+ | mh!Bus.png | ||
+ | mh!MetroA.png | ||
+ | mh!MetroB.png | ||
+ | mh!MetroC.png | ||
+ | mh!Tram.png | ||
+ | |||
+ | Pak už zbývá jen do gpx souborů pro každou zastávku správně uvést | ||
+ | |||
+ | <type>mh</type> | ||
+ | <sym>Bus</sym> | ||
+ | resp. příslušný symbol dopravního prostředku | ||
+ | |||
+ | A na mapě se zastávky objevily. Definice se nijak nedotkne zobrazení dalších bodů, protože ty zůstávají zobrazeny implicitním způsobem. Jen jsem doplnil nové body. |
Verze z 28. 5. 2010, 19:59
Obsah |
Ikony v Geokuku
Program geokuk je vcelku univerzální program pro zobrazování bodů nad mapou. Zobrazované body mohou být libovolné, jejich počet není nijak omezen a uživatel má tedy možnost doplnit zobrazení vlastních bodů a přizpůsobit si již připravené zobrazení. Každý bod může být zobrazen jako ikona složená z různých vrstev, které se vzájemně překrývají a tvoří tak výsledný obraz ikony.
Program má trochu zvláštní terminologii, ale v základu je pochopitelná. Základem je kešoid, což je jakási zobecněná keš. Zobecněná proto, že se vůbec nemusí jednat o kěš jako takovou, ale v podstatě o jakýsi souhrnný typ bodz. Jeho zajímavou vlastností je to, že může se může dál dělit na další podtypy waypoint. Pojem waypoint je v porovnání s geocachingem opět trochu rozšířen. Jako příklad uveďme:
- kešoid keš s tapy tradiční, multy, mystery, ..., ale také dodatečné waypointy parkovistě, finalový bod, stage of multicache, ...
- kešoid waymark může obsahovat dynamicky se měnící (rozšiřující se) typy, namátkou fontány, triangulační body, porály, sakrální stavby, ...
- kešoid Český geodetický bod obsahuje například typy Trigonometrický bod centrální, Trigonometrický bod přidružený, Zhušťovací bod centrální, Zhušťovací bod přidružený, Bod základního tíhového pole, Bod ZGS (základní geodynamické síť) a Základní nivelační bod.
Adresářová struktura
Program pro kreslení ikon používá adresářovou strukturu, která začíná v místě zadaném v menu Soubor / Umístění souborů v položkách
- Složka s rozšiřujícími obrázky jiných geokolegů
- Složka s mými vlastními rozšiřujícími obrázky
K tomu, aby byly příslušné funkce opravdu využity, je nutné u každé položky ještě zaškrtout volbu Aktivní. Zde zadaným bodům říkejme Kořen. V něm vždy adresář map, který dál obsahuje pro každou sadu ikon další adresář. Budeme-li vyvíjet vlastní sadu, nazvěme pro další příklady adresář s naší sadou Vyvoj.
+ kořen + map + Vyvoj + skloX + skloY - skla.txt obsahuje ... seznam podadresaru sklo*, které definují překrývající se vrstvy pro vlastní vykreslování ikon - groups.properties ... obsahuje definici typ!=texovy popis. (pocet pismen typu je dulezity?) - iconOfSada.png (???k cemu???) + Dalsi sada
Adresáře s definicí skla
Každý adresář s definicí skla obsahuje další podadresáře, jejichž jméno vždy začíná číslicí, která určuje vrstvu. Další část jména je popisná a program ji nevyužívá. ???
Uvnitř adresáře mohou být soubory ikona a soubory s příponou properties, které popisují vlastnosti zde definovaných ikon. Jsou to obyčejné textové soubory, na každém řádku je jedna definice vlastnosti. Vlastnost, která nemá být použita není v souboru vůbec definována.
width=NN ...... šířka ikony height=NN ..... výška ikony class=cz.geokuk.api.mapicon.XXXXX ... tvar vykreslení plochy s ikonou XXXXX = OvalRdaver (kružnice/elipsa) RoundRectDrawer (čtverec/obdélník se zaoblenými rohy) StdArchivDrawer (???) GrayDrawer (???) (nějaké další???) fill=RRR,GGG,BBB ... RGB složky barvy pro vyplnění vykreslené plochy, složky jsou v dekadickém tvaru oddělené čárkou lineWidth=NN ....... šířka čáry ohraničující vykreslenou plochu (0=bez čáry)
Soubory s ikonami mají pevně daný formát jména (před příponou). Jeho vysvětlení je dál v textu.
Princip zobrazování ikon
Vlastní obrázky, z kterých je ikona složena, mohou být v různých formátech (JPG, PNG, GIF, BMP) a je vhodné, aby hoorní vrstvy byly v takovém formátu, který podporuje průhlednost, aby v některých místech mohly být vidět vrstvy spodní. Autor opět zavedl svou vlastní terminologii, kde vrstvě s nějakou sledovanou vlastností přisoudil jméno Gen (v některém dialogu je pro zmatení použil pojem Fenotyp???) a hodnotám, které může vrstva (vlastnost) nabývat dal jméno Alela. Příklad:
- gen velikost keše má alely mikro, small, regular, ...
- gen typ waypointu může mít alely keš, waymark, ...
Seznam genů (tedy sledovaných vlastností a tedy i vrstev) je ohraničený a každému genu je přiřazena konkrétní vrstva daného čísla. Číslo zároveň udává počet znaků, které musí mít pojmenování všech alel tohoto genu. Skládáním jmena alel za sebe pak vzniká cesta a jméno souboru, z nějž se načítají ikony.
-
Gen Číslo vrstvy Možné alely Ikonový kód Typ waypointu 0 Alely nejsou pevně stanoveny Postavení 1 Nevykresluje se. 0 Hlavní bod kešoidu - vždy právě jeden. h Vedlejší body kešoidu. Žádný nebo více. v Druh kešoidu 2 Nevykresluje se. 00 Keš gc Waymark, kromě Českých geodetických bodů wm České geodetické body (speciální Waymark) gb Obecný waypoint (může mít i dodatečné waypointy, ale nejspíš mít nebude). wp Vztah 3 Nehledáno a tudíž nemohlo být nalezeno hnf Nalezeno fnd Moje vlastní own Neexistující, tedy vůbec nezaloženo, (vyskytuje se jen českých geodetických bodů, u kterých existuje databáze) not Stav 4 Aktivní actv Disable dsbl Archivovaná arch Velikost 5 Nevykresluje se 00000 Micro micro Small small Regular regul Large large Huge hugex Nespecifikována nspec Nazaškrtnuta nchec Výlet 6 Nevíme nevime Lovíme lovime Ignorujeme ignoru Postavení k myši 7 Myš není nad waypoitem z keše nomouse Myš je nad jiným waypointm z keše mousean Myš je nad tímto waypointem mouseon Vybranost 8 Nevybraný, čili normální noselect Vybraný selected Vyluštěnost 9 Mysterka, multina či jiná nevyluštěná nevyluste Keš je vyluštěna, to znamená, že existuje finální waypoint nebo je to keš tradiční. vylusteno Zdroj 10 Importované z PQ či jiného zdroje pqimported Ručně přidané handedited Terény Nevykresluje se ter0 Terény 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5 ter10, ter15, ter20, ... Obtížnost Nevykresluje se dif0 Obtížnosti 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5 dif10, dif15, dif20, ...ccc Výčet alel v genech není omezen tímto výčtem. Jen pro tenrto výčet jsou připraveny ikony.
Tvorba jmen souborů s ikonami
Jméno souboru s ikonou je poskládáno z jednotlivých jmen alel (hodnoty uvedené v posledním sloupci v tabulce) a v případě potřeby je možné doplnit ještě některé další vlastnosti.
Priorita
Jména souborů jsou složena ze jmen jednotlivých alel, jména se oddělují podtržítkem. Protože úroveň 0 nemá žádný znak, musí jméno souboru začínat podtržítkem.
Pokud by mohlo vyhovovat v jedné vrstvě více souborů, může být ke jménu doplněna ještě priorita ve tvaru _pN, kde N je číslo priority. v tom případě bude použita ikona s vyšším číslem priority. Pokud priorita není určena, má hodnotu 5.
Umístění ikon
Za normálních okolností se ikona umisťuje střenem na zadané souřadnice. Pomocí dalších parametrů ve jméně souboru s ikonou je možné ikonu pozicovat jinak.
- x3 - X na pozici tři, Y na střed
- y14 - X na střed, , Y na pozici 14.
- x8_y20 - X na pozici 8 a Y na pozici 20.
Jednoduchý příklad definice vlastní sady
Protože mám k dispozici GPX soubor se stanicemi pražské MHD, rozhodl jsem se je zobrazit. Zadal jsem si tedy kořenový adresář a v nem vytvořil strukturu map/MHD a v něm vytvořil textový soubor skla.txt obsahující řádky
skloNormal.VSE skloZvyrazneni.MYS skloNormal.MYS
(Netuším, co znamenají ty přípony, ale opsal jsem to z jakési dokumentace od autora ???)
Pak jsem vytvořil adresáře skloNormal a skloZvyrazneni (v adresáři MHD) a další soubor groups.properties. Do tohoto souboru jsem zapsal jediný řádek
mh!=MHD
kterým jsem definoval nový typ kešoidu. V adresáři skloNormal\2ctverce jsem vytvořil soubor _mh_actv_nomouse_p7_h16_v16.properties s následujícím obsahem:
class=cz.geokuk.api.mapicon.RoundRectDrawer width=16 height=16 fill=255,255,255
Tím jsem definoval velikost zobrazených ikon. V adresáři skloNormal\5typy jsem vytvořil soubory s ikonami jednotlivých typů zastavek:
mh!Bus.png mh!MetroA.png mh!MetroB.png mh!MetroC.png mh!Tram.png
Pak už zbývá jen do gpx souborů pro každou zastávku správně uvést
<type>mh</type> <sym>Bus</sym> resp. příslušný symbol dopravního prostředku
A na mapě se zastávky objevily. Definice se nijak nedotkne zobrazení dalších bodů, protože ty zůstávají zobrazeny implicitním způsobem. Jen jsem doplnil nové body.