SRTM OSMOSIS Höhenlinien Problem (gelöst: Srtm2Osm war veraltet)

Hallo Leute,

seit einiger Zeit ist mir aufgefallen, dass ich Probleme mit der Darstellung von Höhenlinien habe, sei es in GPSMID oder auch in Maperitive.
Wie sich das Problem darstellt sieht man beispielsweise auf dem unten beigefügten Bild.

Die zugrundeliegenden Karten (OSM-Dateien) für die Renderer erstelle ich grundsätzlich mit SRTM2OSM und mit OSMOSIS. Meine genaue Vorgehensweise hatte ich vor einem Jahr hier schon mal ausführlich beschrieben.

Meiner Meinung nach kann das Problem nur bei SRTM2OSM oder bei den beiden Osmosis-Durchläufen (migrate oder merge) entstehen. Das beide Renderer das gleiche Problem erzeugen, halte ich für unwahrscheinlich.

Meine derzeit verwendeten Kommandozeilen sehen z.B. wie folgt aus:
1.) Höhenlinien herunterladen mit Srtm2Osm v1.8.14.10
Srtm2Osm.exe -i -large -bounds1 50.21 12.94 50.39 13.20 -cat 200 100 -o SRTM5.osm

2.) Höhenlinien von API 0.5 zu 0.6 migirieren (dies geht max. mit Osmosis 0.35.1, da der Schalter bei neueren Versionen ausgebaut wurde)
osmosis --read-xml-0.5 enableDateParsing=no file=“C:\SRTM5.osm” --migrate --write-xml file=“C:\SRTM6.osm”

3.) beide OSM-Dateien (OSM-Karte und SRTM-Höhenlinien) zusammenführen, z.B. mit Osmosis 0.39
C:\Programme\osmosis-0.39\bin>Osmosis --rx C:\OSM.osm --s --rx C:\SRTM6.osm --s --merge --wx C:\OSM_mit_SRTM6.osm

Könnte mir jemand erklären wie dieses Problem entsteht bzw. wie man es eventuell beseitigen kann?
Ist eventuell mein gewählter SRTM-Bereich zu groß? Haben sich die SRTM-Daten der NASA verändert und arbeitet deshalb Srtm2Osm.exe nicht mehr korrekt? Sind meine Befehlszeilen falsch?

OSM SRTM Problem

Ich habe das Problem weiter eingrenzen können, es muß am 3. Schritt liegen, also dem Zusammenfügen von OSM-Kartendaten und den SRTM-Höhendaten. Ein alleiniges Rendern der Höhendaten (SRTM6.osm) zeigte, dass alle Höhenlinien ordentlich dargestellt werden. Allerdings kann ich auch in der folgenden Zeile keinen Fehler erkennen. :confused:

Osmosis --rx C:\OSM.osm --s --rx C:\SRTM6.osm --s --merge --wx C:\OSM_mit_SRTM6.osm

Das ist recht einfach: Du hast noch eine alte Version (Versionsnummer ist gleich geblieben), die die Node-IDs bei 1.000.000.000 beginnt. Die OSM-Daten haben diese Grenze aber schon seit einiger Zeit überschritten, sodass es zu ID-Konflikten beim mergen kommt.

Oh Mann … vielen vielen Dank aighes, ich probiere und suche mir schon seit einigen Tagen die Finger wund, konnte aber bislang einfach keine Erklärung finden. Ich hätte mir schon die neuste Version von SRTM2OSM heruntergeladen, wenn ich nur gewußt hätte, dass es da eine neue Version gibt (gleiche Versions-Nr. :rage:) . Naja, jetzt geht es ja wieder und ich bin zufrieden. Ich bedanke mich nochmals für Deine Hilfe.

Die Node-ID’s der von SRTM2OSM generierten Dateien beginnen nun bei 2.000.000.000 :). Hoffentlich erinnere ich mich in Zukunft wieder an die Problemlösung, wenn die 2.000.000.000’ste Node-ID bei OSM überschritten wurde.

Das Problem ist dann, dass SRTM2OSM intern AFAIK mit signed Integer rechnet und somit bei rund 2.150.000.000 Schluss ist. Dann müsste man bei SRTM2OSM schon mehr ändern, als bloß die Konstante erhöhen.

Yep. Das Herumflicken wird auch langsam unbefriedigend. Deswegen hab ich die Verwendung von srtm2osm auch aufgegeben und bastle an einer eigenen Höhenlinienimplementierung.

bye
Nop