Kráječ GPX

pomocný program pro zkoumání limitů velikosti souborů pro GPS Oregon 550

Poslední verze ke stažení ZDE , případně ZIP

historie :

ver 0.002

  • doplněna možnost spouštět program s parametry nazev.gpx velikost , kdy velikost je číslo definující velikost výsledného děleného souboru, příklad :
    krajecgpx.exe exportZgg.gpx 3000
    znamená příkaz pro program krajecgpx rozdělit soubor exportZgg.gpx na více souborů o velikosti kolem 3 MB.
  • Program je tedy nyní možno zařadit do procesu exportu GPX z GG, kdy výsledkem je jak jeden veliký GPX vygenerovaný GeoGetem, tak i sada souborů získaných rozdělením velikého GPX na řadu menších o přibližné velikosti definované uživatelem.

ver 0.001

  • vytvořen zkušební programek na dělení GPX souborů pro potřeby GPS navigace Oregon 550
  • program funguje tak, že načítá veliký vstupní GPX soubor a ukládá ho průběžně do jiného souboru. Dojde-li u tohoto nově vytvářeného souboru k dosažení definované velikosti, je provedeno čtení vstupního souboru až ke konci entity (kompletní popis cache) , zápis nově vytvářeného souboru je ukončen a je vytvořen další nový soubor, s pořadovým číslem o 1 vyšším, do kterého je opět pokračováno v kopírování načítaného vstupního GPX souboru. Tím je způsobeno, že velikost výsledných souborů je vždy mírně větší, než je uživatelem definovaná velikost.

 

Proč jsem se do toho pustil:

Oregon 550 je dle mého mínění v současné době jedna z velmi dobrých GPS velmi vhodných pro Geocaching, proto jsem si jí pořídil. Spolu s GeoGetem a jeho možnostmi jsem získal nástroj používaný při víkendových výletech nejen po ČR.

Docela mne mrzely některé průvodní provozní potíže, kdy se přístroj občas zaseknul (zamrznul), občas se neposouvala mapa (ale počitadlo vzdálenosti ano), občas se muselo na splnění nějakého příkazu čekat neúměrně dlouho (mazání waipointu) a další uživatelům známé "průvodní jevy".

Při hledání řešení jsem narazil kromě řady dílčích postřehů i na limity stanovené výrobcem, zde jsou (pro Oregon 550 zdroj : http://garminoregon.wikispaces.com/Geocaching ) :

GC5.) Can the Garmin Oregon load geocaches from multiple gpx files? Is there a limit?

Yes, but there is a limit of 200 gpx files.

GC6.) Does the Garmin Oregon have a gpx file size limit?

Yes. If the total size of all gpx files exceeds 8MB-10MB the Oregon may fail to display some or all of the geocaches that these files contain. The exact limit has not been characterized yet. Typically, if you use PQs this limit will never become a factor because PQs only contain 5 logs per cache keeping the file sizes smaller. However, if you use GSAK and do not limit the number of logs to 5 you can end up with very large gpx files that will cause this problem.
Verify: Needs verification -- I've heard reports of people using much larger files on the x50.

Běžně jsem z GG exportoval kolem 3000 cache, výsledný soubor pak byl velikosti kolem 30 MB a více, tedy více než uváděný limit.

Sice je uváděno, že se jedná o CELKOVOU doporučenou velikost, ale napadlo mne vyzkoušet, zda nepomůže rozdělit velký GPX soubor na více menších a - BINGO ! Zatím si myslím, že to je správná cesta, protože přístroj přestal zamrzat, nekouše se a začal být značně svižnější, v některých případech velmi znatelně, uvedu tři příklady :

1/ To zlepšení o kterém se zmiňuji, je RYCHLOST . GPS začala šlapat jak má. Nedochází k zaseknutí posuvu mapy, kdy se sice ukazatel vzdálenosti měnil, ale mapa zůstala zaseknutá, nehybná. To se mi už neděje.

2/ Dále pak se zrychlily odezvy na vyhledávání cache při zadávání znaků.

3/ Při tom množství cache je vždy naplněn limit pro množství waipointů. Chtěl-li jsem vytvořit nějaký nový waipoint (při zakládání cache a pod), musel jsem nějaký existující smazat, aby vzniklo místo, kam nový waipoint uložit. Při jednom jediném velikém souboru GPX, který třeba i čtyřnásobně překračoval doporučenou maximální velikost, trvalo smazání velmi dlouho a nezřídka došlo k zamrznutí. Nyní při použití rozděleného GPX souboru na několik menších je odezva na smazání téměř okamžitá a k problémům nedochází.

Jedná se pouze o moje subjektivní pozorování , sami víte, že věci jako 'náhodné občasné selhání (zamrzání)' se špatně odhalují. Bod 1 a hlavně pak bod 3 , kde je rozdíl mimořádně markantní, mi však dávají za pravdu v tom, že doporučenými limity GARMINu je vhodné se zabývat a to přesto, že přístroje umí 'zpracovat' i soubory vysoce limit velikosti překračující.

V současné době mám v GPS vždy téměř 5000 cache v zhruba 10-ti souborech GPX , což pro Českou Lípu je okruh skoro 90 km.

Nemám žádné problémy co se týká zamrzání, nebo sekání mapy.

Možná přišel čas ověřit moje postřehy i mezi ostatními Oregánisty a pokud dojde ke shodě, mělo by myslím smysl požádat autory GeoGetu o zabudování podpory pro dělený výstup GPX, případně na ten jediný veliký výsledný GPX poštvat kráječ GPX, jako to nyní dělám já.



Jestli mohu poprosit , zkuste jednoduchý a na čas snad ne příliš náročný pokus :

1/
Vyexportujte (asi jako většina používám Medwynovo makro http://geoget.ararat.cz/doku.php/user:skript:gpxgarmin) z GG počet cache blížící se limitu 5000. Zapnete GPS, nechte načíst a v Manažeru waipointu dejte smazat kterýkoliv z nich. Samotné smazání zabere nějakou dobu. (u mě 57 sec)

2/
Pak opět GPS připojit, ten jeden veliký soubor GPX nahradit tím samým objemem keší, ale nakouskovaných do více menších GPX souborů. Zapnout GPS, zase to bude nabíhat a po startu dát smazat nyní jeden z waipointů.

Je ta doba smazání ZNATELNĚ kratší ? (u mne 4 sec)

Pokud je tomu u vašich O550 podobně, pak má smysl se dělením souboru GPX zabývat


Ještě odpověď na opakující se otázku jak začlenit krajecgpx do gpxgarmin.gge.pas, stačí doplnit :

function ExportAfter(value: string): string;
var
s: String;
Size: Integer;
begin
{Uvolnime pamet}
exportTags.Free;

RunExec('krajecgpx.exe '+value+' 5000');
.
.
.