mapa dla garmina - jak ją utworzyć?

W zasadzie do codziennego użytku dla swojego Etexa wykorzystuje mapę stworzoną przez kolegę rogala i sprawdza się świetnie niemniej mapa ta nie powinna zawierać to co normalnym śmiertelnikom potrzebne nie jest jak ławki czy lampy a ponieważ nie pomijam takich strategicznych obiektów przy mapowaniu jadąc rowerem dobrze by było mieć do takich wypadów informację czy mijany obiekt istnieje już na mapie czy nie. Pytanie jak utworzyć mapę która będzie zawierać warstwę składającą się jako uzupełnienie tylko i wyłącznie z poniższych na dwóch może trzech najniższych zoomach

amenity bench
amenity game_feeding
amenity waste_basket
amenity waste_disposal
highway street_lamp
highway speed_camera

opcjonalnie również i te
bench yes
bin yes
craft beekeeper
man_made beehive

Tak sobie czytam i tonę w nadmiarze informacji a style i hexy dla garmina to już w ogóle jakieś voodoo :slight_smile:

http://wiki.openstreetmap.org/wiki/Mkgmap/help/How_to_create_a_map
http://wiki.openstreetmap.org/wiki/Mkgmap/help/options
http://www.mkgmap.org.uk/doc/options
http://www.cferrero.net/maps/guide_to_mkgmap_style_files.html
http://www.cferrero.net/maps/maps_FAQ.html#garmin

Prośba o uzupełnienie poniższego, gdyż to raczej będzie za mało :wink:

wget http://download.geofabrik.de/europe/poland/podkarpackie-latest.osm.pbf
java -jar splitter.jar podkarpackie-latest.osm.pbf
java -jar mkgmap.jar --country-name=Poland --country-abbr=PL --region-name=Podkarpackie --region-abbr=POD --gmapsupp 6324*.osm.pbf

Standardowo to byłoby mniej więcej tak:

Ściągasz pliki z granicami i morzem (aktualizujesz to co pewien czas):
http://osm2.pleiades.uni-wuppertal.de/bounds/latest/bounds.zip
http://osm2.pleiades.uni-wuppertal.de/sea/latest/sea.zip

Ściągasz plik z dużymi miastami:
http://download.geonames.org/export/dump/cities5000.zip

Plik z morzem nie jest Ci potrzebny w podkarpackim, ale dla kompletności przepisu też go uwzględniłem.

Robisz mapę:
wget http://download.geofabrik.de/europe/poland/podkarpackie-latest.osm.pbf
java -jar splitter.jar --geonames-file=cities5000.txt podkarpackie-latest.osm.pbf
java -jar mkgmap.jar --bounds=bounds.zip --precomp-sea=sea.zip --gmapsupp -c template.args

Powinieneś dostać standardową mapę, która zapewne nie będzie taka, jakbyś chciał. Żeby uzyskać nakładkę z własnymi punktami, powinieneś zrobić własny styl. W tym celu przestudiuj dokumentację, która jest w pakiecie z mkgamp - doc\style-manual.pdf. Następnie zmodyfikuj styl default, który też jest w pakieci mkgmap - examples\styles\dafault. Ponadto nakładka powinna być transparentna, co wymaga kolejnej opcji. Komenda kompilacji z byłaby mniej więcej taka:
java -jar mkgmap.jar --bounds=bounds.zip --precomp-sea=sea.zip --style-file=my_default --transparent --code-page=1250 --gmapsupp -c template.args

W zasadzie powinieneś zdefiniować identyfikatory mapy, czyli do splittera dodać opcję --mapid=… a do mkgamp opcję --family-id=… . Jak dojdzesz do tego etapu, to pewnie zauważysz więcej istotnych parametrów, które wypadałoby użyć.

Swoją mapę próbuję utworzyć rzecz jasna jako komplementarną do mapy głównej zawierającej już najważniejsze rzeczy stąd usunąłem “bounds” oraz “sea” z linii poleceń, ale jak rozumiem “bounds” dla mkgmap czy “cities” dla splittera są potrzebne zawsze.

Problem ze stylem jest z kolei taki, że lista ikon dla Garmina http://www.mail-archive.com/mkgmap-dev@lists.mkgmap.org.uk/msg01125.html nie zawiera zbyt wiele tego co potrzebuję poza ławką i kamieniem. Znalazłem jak tworzyć własne ikony http://freegeographytools.com/2008/creating-custom-icons-for-garmin-points-of-interest-poi ale jak rozumiem ten sposób wcale ich do mapy nie doda

Z katalogu ze stylem usunąłem wszystko poza podkatalogiem “inc” oraz plikiem “points”, którego zawartość podałem poniżej. Będzie tak?

include 'inc/name';

#http://www.waymarking.com/images/cat_icons/dedicatebench.gif
amenity=bench [0x6605 resolution 24]
bench=yes [0x6605 resolution 24]


#http://icons.iconarchive.com/icons/icons8/windows-8/24/Household-Waste-icon.png
#0x2F15  Utility
#amenity=waste_basket
#bin=yes
#amenity=waste_disposal

#http://digital-impulse.com/wp-content/plugins/smilies-themer/digicons/Bumblebee.png
#0x6400  Manmade Feature
#man_made=beehive

#http://digital-impulse.com/wp-content/plugins/smilies-themer/digicons/Beehive.png
#craft=beekeeper

#http://www.poidb.com/MakeThumbnail.aspx?H=24&W=24&file=/images/groups/speed-camera_tn.gif
#highway=speed_camera

#http://virtonomics.com/img/products/24/readinglamp.gif
#highway=street_lamp

denotation=natural_monument & natural=rock { name '${name} (${description})' | '${name}' } [0x6614 resolution 24]
denotation=natural_monument & natural=rock [0x6614 resolution 24 default_name 'Pomnik Przyrody']
#natural=rock [0x6614 resolution 24]
#0x6614  Rock
#0x01040c        exposed rock
#0x2C04  Land Mark

#http://icons.iconarchive.com/icons/fatcow/farm-fresh/24/tree-icon.png
#denotation=natural_monument & natural=tree { name '${name} (${description})' | '${name}' } [0x???? resolution 24]
#denotation=natural_monument & natural=tree [0x????? resolution 24 default_name 'Pomnik Przyrody']

#http://www.waymarking.com/images/cat_icons/pn_fall.gif
#0x6511  Spring
denotation=natural_monument & natural=waterfall [0x6511 resolution 24]

#http://icons.iconarchive.com/icons/icons8/ios7/24/Animals-Deer-icon.png
#amenity=game_feeding


include 'inc/water_points';
include 'inc/landuse_points';

<finalize>
# The finalizer section is executed for each element when a rule with an element type matches
name=* { name '${name}' }
include 'inc/address';

Ani bounds ani cities nie są potrzebne ale są przydatne. bounds służy do określania adresu (kraj, województwo), cities służy do nazwania kafelków mapy.

Co do stylu, to po prostu sprawdź, jaka mapa powstaje. Ale chyba inc/water_points i inc/landuse_points nie są Ci potrzebne.

Ikony do POI najwygodniej zrobić TYPViewer-em:
https://sites.google.com/site/sherco40/

Apka nie chce działać pod Linuxem/Winem, ani Windowsem 7 32czy 64 bit i wywala błędem
"Error 50003 (erreur inattendue) in procedure Main of Module Demarrage , at line: 340. Znalazłem, że można wypróbować nowszą wersję programu by ten błąd ominąć, ale trochę to dziwne że goście mają a autor na swojej stronie nie także odpuściłem do momentu znalezienia pewniejszego źródła… http://www.sorcieremonique.com/t19598-msg-erreur-50003-resolu

Co do samej mapy to wygenerowałem je najnowszymy wersjami splittera r437 i mkgmap r3676 ze stylu noname z zamienonym plikiem “points” wyżej zamieszczonego

splitter --geonames-file=cities5000.zip --mapid=40000000 --max-threads=9 podkarpackie-160504.osm.pbf

mkgmap --bounds=bounds.zip --precomp-sea=sea.zip  --style-file=/usr/share/mkgmap-bin/style/ --transparent --code-page=1250 --gmapsupp \
--country-name=Poland --country-abbr=PL --region-name=Podkarpackie --region-abbr=POD -c template.args \
--family-id=10011 --family-name="OSM Extras" --max-jobs=9 400*.osm.pbf

i utworzyło plik gmapsupp.img na ok 45MB, ale Etex30 go nie widzi po wgraniu. Nie widać ani ławek, ani mapy do wyboru w ustawieniach :frowning:

To country i region to raczej nie potrzebne ale nie widzę powodu, dla którego nie miałoby działać. Gdybyś gdzieś wystawił plik gmapsupp.img, to mogę sprawdzić, co jest z nim nie tak.

zrobiłem tak by same ławki się zrobiły a wszystko inne z pliku points wykasowałem. Dodatkowo okazało się, że w stylu noname standardowo plik “lines” zawiera szereg dróg, które również usunąłem co dodatkowo przyczyniło się do zmniejszenia rozmiaru mapy o 1/3. Pozostawiłem wszystkie ustawienia kraju i regionu i poszło :slight_smile: Co ciekawe tak przygotowaną mapę Garmin widzi jako PL-Jaroslaw.
Trochę dołujące, że mimo ławki są na liście Garmin types jako “0x6605 Bench” to i tak widoczne są jedynie jako kropki co oznacza, że i dla nich trzeba będzie przygotować stosowną ikonę :confused:

PS Tak swoją drogą można by pomyśleć nad warstwą z boćkami :slight_smile: Mógłbym ją przygotowywać i gdzieś wrzucać powiedzmy co tydzień gdyż pewnie znajdą się chętni co by chcieli od czasu do czasu gniazdo dodać, a do codziennego użytku się raczej by nie nadawało. Proponuję wykorzystać ikonę z pluginu do JOSM Zbigniewa i nieco ją zmodyfikować (chętny umiejący to zrobić poszukiwany) dla tych sytuacji by pomóc w skompletowaniu danych w OSM

  • ikonę kolorowa dla gniazda zamieszkanego
  • 50% koloru dla gniazda z brakującymi tagami nest_status
  • same kontury dla gniazd opuszczonych lub platform, które są przygotowane lecz jeszcze nie zamieszkałe.