Höhenlinien in Mapsforgekarten

Hallo zusammen,

kennt einer eine halbwegs aktuelle Anleitung, wie man .map-Karten mit Höhenlinien versieht?
Bei Google und in Foren habe ich immer nur scheinbar veraltete Methoden mit inaktuellen Plugin-Versionen gefunden.

Aktuell nutze ich unter Ubuntu 14.04 Osmosis mit dem Mapsforge mapwriter-plugin (mapsforge-map-writer-0.6.1.jar-with-dependencies.jar) zum Erstellen der einfachen .map-Karten.
Eine Beschreibung für Windows 7 (x64) wäre aber auch ok.

Vielen Dank schonmal im voraus.

Das sollte dich weiterbringen: http://katze.tfiu.de/projects/phyghtmap/index.html

Gruß Klaus

Danke dir.
Den Link hatte ich in älteren Forenbeiträgen auch schonmal gefunden.
Ich kann damit nur leider nicht soviel anfangen, weil ich nicht genau verstanden habe, wie man das im Zusammenhang mit der .map-Erstellung nutzt.
Vielleicht liegts auch an meinem Englisch.

Was macht das Tool genau und wie bringe ich die Daten dann zusammen?

.map-Erstellung machst du doch mit OSM-Daten. Phyghtmap erzeugt “OSM-Daten”, was das Daten-Format betrifft, aber die Daten-Quelle ist eine andere. OSM - die Datenbank - hat mit Höhenlinien nichts zu tun. Die Weiterverarbeitung der Höhenlinien kann dann aber mit den gleichen Programmen erfolgen, die schon mit OSM klarkommen.

Ok, also sind die Schritte mit diesem Programm vorzuschalten.
Und in nem zweiten Schritt folgt die .map-Erstellung mit Osmosis.

Kannst du mal an nem Beispiel wie dem Saarland oder so Schritt für Schritt die nötigen Kommandozeilen posten?
Tue mich wie gesagt mit dieser verlinkten englischsprachigen Dokumentation etwas schwer…vermutlich auch, weil für mich das ganze Srtm-Thema noch sehr fremd ist.

saarland-latest.osm.pbf und saarland.poly (http://download.geofabrik.de/europe/germany/saarland.poly) von download.geofabrik.de downloaden

(Ich weiß nicht, für welche Endanwendungen mit MapsForge Karten erstellt werden können. Wenn diese aber mit mehreren gleichzeitig aktivierten Maps klarkommen, würde ich OSM-Daten und Höhenlinien getrennt erstellen. Dann kommen sich die Element-IDs wegen stetiger Erhöhung nicht ins Gehege und die Höhenlinien können immer weiter benutzt werden. Ansonsten müssen die Max-IDs immer wieder neu ermittelt und Phyghtmap mit ordentlichem “ID-Offset” neu ausgeführt werden.)

Nun Phyghtmap aufrufen:
phyghtmap --polygon=“Pfad/zur/saarland.poly” --line-cat=500,100 --step=20 --start-node-id=1000000000 --start-way-id=2000000000 --max-nodes-per-tile=0

Die entstandene .osm-Datei kann nun wie gewohnt mit osmosis und dem Plugin verarbeitet werden.

Wenn die Endanwendung nur eine einzige Karte unterstützt, kommt man um das Mergen nicht herum. Dazu ist aber Osmconvert empfehlenswert, mit welchem man auch die Max-ID’s ermitteln muss, um Phyghtmap’s start-node-id und start-way-id korrekt hoch zu setzen.

Ich glaube, wenn man die Tippeltappeltour erstmal gemacht und das beobachtet hat, wird alles klarer.

Prima!
Danke!
Werde es gleich mal ausprobieren.

So, die Phyghtmap-Prozedur läuft fehlerfrei und langsam bildet sich bei mir auch ein Verständnis für den Umgang mit dem Tool.
Danke schon mal dafür.

Allerdings benötige ich tatsächliche eine “einzige Karte”.

Kannst du mir beschreiben, wie ich das im Einzelnen (Osmconvert, start-node-id, etc.) umsetzen muss?
Schön wären auch hier wieder ein paar exemplarische Befehlszeilen.

Für den Merge der Daten siehe https://wiki.openstreetmap.org/wiki/Osmosis/Detailed_Usage_0.45

Gruß Klaus

Osmconvert (Download und Befehlsreferenz) findest Du hier:
http://wiki.openstreetmap.org/wiki/DE:Osmconvert

Der Absatz direkt, um den es geht:
http://wiki.openstreetmap.org/wiki/DE:Osmconvert#Ermitteln_statistischer_Daten

Dort sind die Ausgaben “node id max:” und “way id max:” für die saarland.osm.pbf interessant. Aber mit jedem neuen Download erhöhen sich diese, deshalb vergibt man entweder gleich einen auf lange Zeit sicheren Wert oder führt phyghtmap bei jeder Aktualisierung neu aus, wobei “–start-node-id=” und “–start-way-id=” entsprechend gesetzt werden müssen. Es dürfen sich keine IDs überschneiden.
(Ach ja, ich glaube, phyghtmap hat noch eine kleine Macke - das hgt-Verzeichnis muss bei Wiederverwendung der hgt-Dateien unbedingt angegeben werden, damit die ganzen Downloads nicht nochmal neu starten - also zusätzlich “–hgtdir=hgt” angeben)

Das Mergen dann (auch mit geografisch deckungsgleichen Gebieten):
http://wiki.openstreetmap.org/wiki/DE:Osmconvert#Zwei_oder_mehr_geographische_Bereiche_zusammenf.C3.BChren

Danke euch Beiden.

Ich versuche das mit dem Mergen dann jetzt erstmal mit der von Klaus vorgeschlagenen Osmconverter-Methode.

Kann ich denn jetzt direkt die saarland.osm.pbf mit der von Phyghtmap erstellten .osm-Datei mergen oder muss ich die saarland.osm.pbf erst zu einer .osm konvertieren?

Klaus’ Vorschlag war die “osmosis-Methode”, osmosis haste ja bereits.

Osmconvert liest die Dateien so, wie sie angegeben sind (Formate .osm, .osm.pbf und o5m).

Ja, sorry. Das hab ich eben auf dem Smartphone-Display durcheinander geworfen.

Ich teste gleich zu Hause mal beide Wege.

So, jetzt hab ich endlich ein (auf den ersten Blick) brauchbares Ergebnis.
Expliziten Dank daher nochmal an euch Zwei!

Die Höhenlinien zeigt er mir allerdings nur an, wenn ich im letzten Schritt (Schreiben des .map-Files) noch eine modifizierte tag-mapping.xml mit einbinde. (vergleiche hier)

Ich liste nachfolgend mal meine Schritte auf, damit

a. ihr nochmal prüfen könnt, ob ich irgendwo einen Fehler drin habe, den ich beim ersten Sichten der Karte nicht festgestellt habe.
b. alle Nachfolgenden mit dem gleichen Wunsch (Mapsforge-Karten mit Höhenlinien zu versehen) das Ganze mal chronologisch nachvollziehen können.

I. Downloads und Installationen

II. Prozedur

  1. Auslesen der statischen Daten der .pbf-Datei
./osmconvert saarland-latest.osm.pbf --out-statistics
  1. Download und Verarbeitung der SRTM-Daten inkl. Festlegung der “–start-node-id=” und “–start-way-id=”.
phyghtmap --polygon=saarland.poly --line-cat=500,100 --step=20 --start-node-id=4547100300 --start-way-id=458754883 --max-nodes-per-tile=0

“–start-node-id=” und “–start-way-id=” sollten höher als “node id max:” und “way id max” sein, um doppelte IDs zu vermeiden.

  1. Mergen der Rohdaten mit dem Phyghtmap-Ergebnis unter Einbeziehung der tag-mapping.xml und gleichzeitiges Schreiben der .map-Datei
osmosis --rb file=saarland-latest.osm.pbf --rx file=lon6.35_7.41lat49.11_49.64_srtm3.osm enableDateParsing=no --merge --mw file=saarland_mit_hoehenlinien.map type=hd tag-conf-file=tag-mapping.xml

Für die Darstellung muss natürlich ein Rendertheme gewählt werden, dass für die Darstellung von Höhenlinien geeignet ist. (z.B. das elevation-hike-theme von Openandromaps)

“2. Übernahme der “node id max:” und “way id max:” als “–start-node-id=” und “–start-way-id=””

Nein, nicht einfach übernehmen, es muss zumindest 1 draufgegeben werden. Es darf keine zwei Elemente gleichen Typs mit gleicher ID geben.

Alles klar. Vielen Dank.
Habs oben angepasst.

Hmm, du benutzt ein Theme welches nur bedingt zu deinen Kartendaten paßt. Insofern erschließt sich mir der Zweck deiner Aktion noch nicht.

Gruß Klaus

Ich bin gerade dabei, mir ein eigenes zu erstellen. Werde aber noch ne Weile brauchen.
Mit dem o.g. Theme lässt sich aber zumindest der Erfolg der Prozedur veranschaulichen.
Wenn du spontan ein geeigneteres Theme posten kannst, gerne her damit.