GeoGet

Complete geocaching solutions

User Tools

Site Tools


user:skript:animapa

AniMapa

Animovaná mapa nálezů. Jednoduchý skript, který doplní zvolenou mapu o chronologickou animaci ikon nalezených kešek a počítadlo měsíců, let a nálezů. Výstupem skriptu je animovaný GIF obrázek, který lze vložit do statistiky.

Autor

  • kiReGPS, kiReGPS [at] gmail [dot] com - sem prosím zasílejte i odměny v podobě lahví extra delikátního kolkovaného alkoholu. Vzhledem k charakteru přenosového kanálu nejlépe formou (z hlediska obsahu metylalkoholu) zcela bezpečného obrázku. Všem přispěvatelům děkuji… 8-)

Automatická instalace

Nainstalovat do GeoGetu
Instalaci doplňku spustíte kliknutím na tlačítko vlevo. Následně budete v prostředí GeoGetu provedeni instalačním procesem. Pro zajištění této funkce je třeba mít na počítači již nainstalovaný a spuštěný program GeoGet .
Kliknuli jste na tlačítko a nic se nestalo? Máte opravdu spuštěný GeoGet ? Je to potřeba! Nebo možná máte zastaralý webový prohlížeč. Nevadí, instalaci doplňku můžete jednoduše vyvolat i prostým zkopírováním (označit text → klik pravým tlačítkem → kopírovat) následujícího odkazu do schránky: https://www.geoget.cz/doku.php/user:skript:animapa?download

Diskuze

  • Diskuze o skriptu se nachází na stránkách Geocaching.cz ve vlákně, které tento drobný počin vyvolalo.

Popis

Animovaná mapa je taková zcela neužitečná blbinka především do statistik a profilů. Ukazuje chronologickou animaci nálezů. Skript vezme předlohu mapy a postupně do ní animovaně nasází ikonky nalezených keší. Stejně strakatě, jako jsou mapy na geocaching.com při větším oddálení. Přidá i počítadlo času a číslo nálezu, abychom se orientovali. Celé to trochu připomíná padající listí, proto ta ikona skriptu. Do mapy jsou umístěny všechny nalezené keše z aktuální databáze GeoGetu. Pokud jsme tedy ve vybrané oblasti nějaké nálezy vůbec měli.

V dialogovém okně pluginu lze volit několik parametrů generované mapy:

  • předlohu mapy
  • velikost ikon keší
  • prodlevu (a tím i rychlost) animace
  • vložení počítadla měsíc-rok
  • vložení počítadla nálezů
  • opakování animace
  • přidání medaile k ikonám keší, kde bylo nějaké to xTF
  • přidání značek k milníkovým nálezům

Výsledkem práce skriptu je animovaná mapa ve výstupním adresáři se stejným jménem souboru, jako je použitá předloha. Mapy si lze celkem snadno přidávat a vytvořit si tak animaci nálezů kolem svých domácích souřadnic apod. Skript je nezávislý na generátoru statistik, ale připravené mapy vycházejí z map GgStatu.

Alternativou k animované mapě jsou puntíkované mapy modulu MapPinboard z rozsáhlého arzenálu Statoru, které mohou zobrazovat rozfázování nálezů po jednotlivých letech.

U hodně strakatých velkých map s mnoha nálezy už může být trochu problémem velikost vygenerované mapy. Zkontrolujte si prosím, co jste vytvořili. Nepůsobí zrovna dobře, když se profil se statistikou načítá půl minuty.

Velikost výsledného souboru je součtem parametrů:

  • velikost základní mapy
  • velikost ikon krát počet nálezů na výřezu mapy
  • existence počítadel a značek krát počet měsíců s úlovky resp. počet nálezů

Vyšší rychlosti animace mohou zbytečně zatěžovat váš počítač nebo dokonce způsobit nestabilitu webového prohlížeče. Používejte je proto uvážlivě.

Ukázka

Při spuštění pluginu se nejprve zobrazí dialog s nastavením parametrů. Vybereme mapu z dostupných, navolíme velikost ikon a zobrazení počítadla. Důležitým parametrem je prodleva mezi nálezy a tím i rychlost celé animace. Prodlevu lze nastavit od 20 do 200 ms na keš. Zaškrtnutím volby Opakovat animaci se bude mapa animovat pořád dokola. To aby se procesor ve vašem počítači neflákal. Volbou Přidat medaile za xTF doplníme ikonku kešky ještě o metál v barvě FTF, STF nebo TTF úlovku. Lze také potlačit ikony keší a zobrazit jen medaile. Získáme tak snadno animovanou mapu pouze xTF nálezů. Značky milníků jsou malé cedulky, kterými lze označit milníkové keše (stovkové u nižších milníků, pak tisícovkové).

Dialogové okno s parametry mapy

Výsledná mapa padajícího zeleno-modro-žluto-bílo-červeného listí s takto nastavenými parametry je pro našich cca 2000 nálezů v ČR soubor GIF o velikosti cca 248 kB (z toho 48 kB základní mapa, 48 kB počítadlo a zbylých 152 kB spadá na ikonky keší ve střední velikosti). Pro zobrazení animace je nutné mapu rozkliknout:

Výsledná animace, klikni pro zobrazení animace

Jak je uvedeno dále, kreativitě ve vytváření vlastních map se meze nekladou. Zejména u těch malých lokálních. Pro zajímavost proto vkládám ještě jednu malou ukázku výstupu. Jde o detailní mapu oblasti mezi Srbskou Kamenicí a Kytlicí, kde jsou nálezy doplněny i o ikonku FTF (nová vlastnost od verze 0.0.2). Použita byla turistická mapa z mapy.cz. Keší v animaci moc není, ale věřte, že co kus, to perla. Pro zobrazení animace to chce mapu rozkliknout. Velikost GIFu cca 259 kB (z toho 198 kB základní mapa):

Kytlice a Srbská Kamenice, klikni pro zobrazení animace

Poslední ukázka je listí ve městě. Animace nálezů v Ústí nad Labem je cca 229 kB velká (z toho 160 kB mapa), je třeba jí zase rozkliknout:

Ústí nad Labem, klikni pro zobrazení animace

Nastavení a konfigurace

Systémová nastavení

Ve Správci pluginů na záložce Konfigurace pluginů GeoGetu lze nastavit volby:

  • OutMapFolder1.0.1 - absolutní cesta k adresáři pro uložení výsledných animovaných GIFů. Zadávejte i s koncovým zpětným lomítkem! Tedy např.: C:\Data\Moje oblíbená složka\. Pokud je volba prázdná, použije se defaultní podadresář \AniMapa\output\ ve složce GeoGetích skriptů. Možnost nastavení výstupního adresáře je užitečná zejména pro Dropboxáky a Googledrajváky, kteří tak snadno nasměřují výsledné mapy do složky Public (Dropbox) nebo na složku Google Drive a replikací ji automaticky zveřejní do profilu.
  • BrowserType1.0.2 - typ webového prohlížeče, kterým se prohlíží náhled mapy. Možné hodnoty jsou Chrome, IE, Firefox nebo Opera. Tento poněkud nešťastný postup je vynucen nekompatibilitou mezi prohlížeči, kdy bohužel nelze najít společný způsob volání browseru pro zobrazení lokálně uloženého GIFu. Pokud je volba prázdná, nastaví se pro IE. Připomínám, že náhled je prováděn v prohlížeči podle nastavení GeoGetu. Se systémovým nastavením počítače to nijak nesouvisí!
  • TagxTF1.0.3 - možnost definovat tag, kde jsou uloženy indikace xTF nálezů, pokud náhodou někomu nevyhovuje výchozí tag FTF.

Kam nahrát mapu

Výsledný soubor máme sice hezky (a rychle) v adresáři svého počítače, ale pro zobrazení ve statistikách profilu ho musíme nahrát někam na web a vytvořit na něj odkaz. Něco jako:

<img src="http://adresa-mého-místa/název-animované-mapy.gif" />

Způsobů nahrání obrázků na web je nespočetně. Osobně doporučuji webové prostory, které jsou zpravidla k dispozici jako součást emailů (Seznam, Gmail…). Např. pro účty u Seznamu je automaticky k dispozici služba Sweb.cz s prostorem pro vlastní webové stránky včetně obrázků. Sem nahrajeme GIF, použijeme odkaz do profilu a dílo je dokonáno. Nahrání můžeme i zautomatizovat pomocí Combine - viz níže.

Další možností je použití Dropboxu, kde máme k podobným účelům určenou složku Public, do které když nahrajeme jakýkoliv soubor tak na něj existuje jednoznačný odkaz ve formátu http://dl.dropbox.com/u/<vaše-uid>/soubor.přípona (Klik pravým tl. → Dropbox → Copy public link).

Pokud ale nemáte GeoGet ve složce s veřejným přístupem, je zde možnost získáni odkazu na libovolný soubor kliknutím pravým tl. myši → Dropbox → Share link. Tím se vytvoří unikátní odkaz na daný soubor ve tvaru https://www.dropbox.com/s/<unikátní-řetězec-znaků>/CR-okresy-blue.gif. Problém je, že tento odkaz nevede přímo na soubor GIF, ale na stránku s daným souborem s tlačítky Share, Download, atd. Když ale změníme v adrese www na dl (odkaz bude vypadat https://dl.dropbox.com/s/<unikátní-řetězec-znaků>/CR-okresy-blue.gif), tak už máme odkaz přímo na obrázek. Ještě doporučuji změnit https na http.

Obdobně jako Dropbox můžeme použít i Google Drive. Umístění souboru je zde libovolné. Je potřeba nastavit ve sdílení veřejnou dostupnost na webu a vytvořit přímý odkaz. V nastavení sdílení najdeme odkaz na sdílení. Něco jako:

https://docs.google.com/file/d/0B0GoaIrKr6t8U0...GRnYVo3bEU/edit?usp=sharing

Ono 0B0GoaIrKr6t8U0…GRnYVo3bEU je ID souboru. Do profilu zadej odkaz ve tvaru https://drive.google.com/uc?export=view&id=<ID souboru>, tedy v našem příkladu jako:

https://drive.google.com/uc?export=view&id=0B0GoaIrKr6t8U0...GRnYVo3bEU

Vložení do statistik

Do šablony statistik vložíme animaci nejsnáze pomocí příkazu HTML. Příklad kódu (včetně nadpisu):

Header Animovaná mapa nálezů
HTML <img src="http://odkaz.na/mapu.gif" alt="Animovaná mapa nálezů" />

Dávkové spouštění v Combine

V rámci dávky pro Combine použijte silent verzi skriptu AniMapaSilent.ggp.pas, která nezobrazí dialog ani okno s výsledkem generování. Všechny volby dialogu včetně navolené mapy se berou z posledně nastavených hodnot.

V rámci dávky lze snadno nahrát výslednou mapu pomocí FTP do cílového místa na web:

.
.
GGP=+%GG_SCRIPTDIR%\AniMapa\AniMapaSilent.ggp.pas
CMD=+FtpPutFile|%GG_SCRIPTDIR%\AniMapa\output\CR-okresy-green.gif|%FTP_USER%;%FTP_PASSWORD%;ftp.mikrom.cz/gc/statistiky/CR-okresy-green.gif¨

Vytvoření vlastní mapy

Mapové předlohy má skript uloženy v adresáři \AniMapa\maps\. Spolu s mapou je zde i definiční INI soubor s parametry a kalibrací mapy. Postup vytvoření vlastní mapy je celkem jednoduchý:

  1. Otevřeme nějakou on-line mapu nebo MapSource nebo cokoliv, co nám umožňuje k mapě určit souřadnice.
  2. Vybereme si požadované území. Pozor! Vzhledem k jednoduché metodě kalibrace není vhodné vybírat větší části zeměkoule. Použitelné přesnosti dosáhneme pro území zhruba velikosti státu (USA, Čínu a Rusko vyjímaje).
  3. Umístíme si do mapy body v místě levého horního a pravého dolního rohu požadovaného výřezu mapy. Např. pro mapy.cz pomocí pravého tlačítka myši a “Přidat vlastní bod”.
  4. Zapíšeme si hodnoty šířkových a délkových souřadnic obou bodů (ve stupních s desetinnou tečkou).
  5. Uložíme obrazovku do schránky pomocí Alt-PrintScreen.
  6. Vyřízneme v libovolném grafickém editoru (stačí i Malování) obdélník s rohy přesně v místě zaměřených bodů.
  7. Převedeme výřez do formátu GIF (pozor, zde již Malování není moc vhodné).
  8. Zkontrolujeme velikost výsledného GIFu. Měli bychom se udržet pod hranicí cca 300 kB. Na webu existují různé on-line nástroje, pomocí kterých dokážeme na tři kliknutí velikost GIFu zredukovat.
  9. Zkopírujeme GIF do adresáře \AniMapa\maps\.
  10. Ve stejném místě vytvoříme INI soubor s definicemi. INI obsahuje sekce a parametry:
CR-okresy-green.ini
[Map]
; název mapy, jak se objevuje při jejím výběru v dialogu - povinný parametr!
Name=Mapa GgStat - ČR po okresech - zelená
; soubor GIF s předlohou mapy - povinný parametr!
File=CR-okresy-green.gif
; šířka obrázku předlohy - povinný parametr!
PixelWidth=750
; výška obrázku předlohy - povinný parametr!
PixelHeight=430
; vodorovná pozice datumového počítadla - odleva
PosDateX=500
; svislá pozice datumového počítadla - odshora
PosDateY=5
 
[Calibration]
; šířková souřadnice levého horního rohu mapy - povinný parametr!
coordLatTL=51.03304
; délková souřadnice levého horního rohu mapy - povinný parametr!
coordLonTL=12.07716
; šířková souřadnice pravého dolního rohu mapy - povinný parametr!
coordLatBR=48.53157
; délková souřadnice pravého dolního rohu mapy - povinný parametr!
coordLonBR=18.84987

Mapy vytvořené uživateli

Poznámky, známé problémy, další vývoj

  • ověřit, jak se chová GIF v různých webových prohlížečích, upravit na maximální kompatibilitu
  • opravit průhlednost mapy ČR
  • doplnit parametr skriptu na výstupní adresář
  • čtyřbodová kalibrace mapy metodou nejmenších čtverců (zatím je kalibrace jen zcela primitivní pomocí souřadnic levého horního a pravého dolního rohu mapy, to postačuje pro mapy menších území, ale třeba pro Evropu už nestačí ani náhodou) - z tohoto důvodu nejsou zatím zařazeny mapy větších území
  • přidat pauzičku za posledním nálezem při opakované animaci
  • vylepšit silent režim
  • další varianty počítadla (menší velikost, tmavé cifry)
  • použití grafické knihovny na přípravu základní mapy
  • úprava ikonek keší, aby lépe vypadaly při těsných hromadných překryvech (nechtěl jsem říct rovnou powertrailech)
  • volitelně (v příkrém rozporu s názvem skriptu) generovat jen výslednou statickou mapu nálezů (vyžaduje zcela odlišný přístup ke generování obrázku; mohlo se používat místo puntíkatých map z GC.CZ)
  • vyřešit parametrizaci pro dávkové generování více map v Combine

Stažení

:!: Stáhnout aktuální verzi: animapa-1.0.3.gip

Seznam dostupných verzí

FilenameFilesizeLast modified
animapa-1.0.3.gip518.2 KiB2012/12/18 00:00
animapa-1.0.1.gip505.4 KiB2012/12/14 00:00
animapa-1.0.0.gip492.2 KiB2012/12/14 00:00
animapa-1.0.2.gip506.4 KiB2012/12/14 00:00

Seznam změn

1.0.3 (2012/12/18)

  • parametrizace tagu s xTF nálezy do config.pas
  • powertrailová verze ikonek keší
  • přidána možnost cedulek u milníkových nálezů

1.0.2 (2012/12/14) Beta

  • volba rychlosti animace prodlevou framů 20-200 ms (přičemž 20 ms je 5x vyšší rychlost, než původně)
  • doplnění rámce s prodlevou na konci animace
  • doplnění Netscape rámce i u GIFů bez opakování (snaha o maximální kompatibilitu)
  • parametrizace volání browseru s vygenerovanou mapou (protože bohužel není společné cesty) - Chrome|IE|Firefox|Opera

1.0.1 (2012/12/14)

  • parametrizace výstupního adresáře do config.pas
  • silent verze skriptu (AniMapaSilent.ggp.pas)
  • pluginy zařazeny do skupiny AniMapa (bacha, u starých instalací se nepřemístí)
  • počítadlo nálezů (po stovkách) pod měsíc a rok
  • upraveno volání browseru s vygenerovanou mapou

1.0.0 (2012/12/08)

  • možnost zvolit jen xTF medaile bez ikonek
  • lokalizace (angličtina, čeština)
  • po generování nabídnuta mapa k zobrazení v browseru (díky, Mikrome)
  • upraven způsob převodu souřadnic keše (chybovalo u jeefa)

0.0.2 (2012/12/08) Beta

  • opraveno třídění nálezů podle data i času
  • doplněna možnost přidat na mapu medaile pro xTF nálezy
  • upraveny mapy ČR - průhlednost okolí, místo bílé přidána transparentní mapa

0.0.1 (2012/12/07) Beta

  • Úvodní betaverze za účelem otestování

:!: Zobrazit změny ve starších verzích

Skrýt změny ve starších verzích

user/skript/animapa.txt · Last modified: 2021/12/11 15:29 by mikrom