On 21.11.2016 17:01, Martin Raifer wrote:
Hab ich zwar noch nie selbst gemacht, aber Garmin .img files kann man
meines Wissens nach am besten mit "mkgmap"
(https://wiki.openstreetmap.org/wiki/Mkgmap) erstellen. Das benötigt
aber ein .osm file als Input (auch für Höhendaten, siehe Seite 34 im
Manual: http://www.mkgmap.org.uk/doc/pdf/style-manual.pdf). Dein
Shapefile (evtl. vorher in WGS84 umprojezieren) musst du also nur noch
in .osm umwandeln. Folgendes Tool könnte dabei behilflich sein:
http://wiki.openstreetmap.org/wiki/Shp-to-osm.jar

Die Konvertierung Originalformat -> Shapefile -> OSM-File -> Garmin-IMG ist ein Umweg über 2 Zwischenformate, den ich mir gerne erspart hätte, zumal jeder Schritt eines Konfigurationsaufwandes bedarf. Aber immerhin hat man dadurch die volle Auswahl, wie die Höhenlinien am Ende aussehen sollen.

Nachdem der erste Schritt, also die Erzeugung des Shapefiles, mit den guten Tipps aus den vorherigen Mails gelungen war, ging auch der zweite Schritt, nämlich die Konvertierung in eine OSM-Datei, recht gut. Leider legt shp-to-osm nicht eine einzelne OSM-Datei an, sondern eine Serie von Teil-Dateien, es sei denn, man setzt den Parameter --maxnodes so hoch, dass es wegcrasht. Außerdem sind die IDs negativ und die Versionnummer ist 0.5 statt 0.6. (Darum verweigert z.B. osmosis eine Verarbeitung.) Aber ich hab ein Script geschrieben, das diese Probleme behebt und eine einzelne, 2,5 GB große OSM-Datei draus macht.

Jetzt fehlt noch der letzte Schritt, und der ist der schwierigste, denn mkgmap ist ziemlich buggy und verhält sich anders als dokumentiert. Obwohl ich --output-dir angebe, schreibt es einige Dateien (mit unbekanntem Zweck) ins aktuelle Verzeichnis, und statt dem Wert des Parameters --family-name wird der String "family name" in die Ausgabedatei geschrieben. Am schlimmsten ist aber, dass die Ausgabedatei nur wenige KB groß ist, d.h. sie ist praktisch leer. Am Garmin Dakota 20 sehe ich jedenfalls keine Höhlenlinien.

Hier mein Aufruf:
mkgmap --input-file=osm/noe-contour.osm --gmapsupp --output-dir=img --mapname=73985264 --description="Hoehenlinien NOE" --country-name=AUSTRIA --country-abbr=AT --style-file=style --check-styles --family-name="Contours" --draw-priority=30 --transparent

Und hier der Inhalt von style/lines (style/polygons ist eine Kopie):
# Hoehenlinien:
# Land-contour-thin     20
# Land-contour-medium   21
# Land-contour-thick    22

# Hunderter-HL
 ele ~ '\d*00' {addlabel '${ele}'} [0x20 resolution 17-18]
 ele ~ '\d*00' {addlabel '${ele}'} [0x21 resolution 19-20]
 ele ~ '\d*00' {addlabel '${ele}'} [0x22 resolution 21]
# 20er-HL
 ele ~ '\d*[1-9]0' {addlabel '${ele}'} [0x21 resolution 21]

--
Friedrich K. Volkmann       http://www.volki.at/
Adr.: Davidgasse 76-80/14/10, 1100 Wien, Austria

_______________________________________________
Talk-at mailing list
[email protected]
https://lists.openstreetmap.org/listinfo/talk-at

Antwort per Email an