[Talk-at] Höhenlinien
Friedrich Volkmann
bsd at volki.at
Tue Nov 22 12:11:48 UTC 2016
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
More information about the Talk-at
mailing list