Fragen zu Höhenlinien bei Freizeitkarte und OpenTopoMap

Hi,

beide genannten Karten basieren ja auf der OSM-Karte. Ein Unterschied ist jedoch, daß die Freizeitkarte (FK) die Höhenlinien enthält, bei der OpenTopoMap (OTM) hingegen die Höhenlinien separat bereitgestellt werden und deshalb nicht von allen Geräten im Kartenbild dargestellt werden (können). Das liegt offenbar daran, daß die FK die OSM-Höhenlinien verwendet, während die OTM für die Höhenlinien die SRTM-Daten nutzt. Dazu meine Fragen:

  1. Weiß evt. jemand hier, warum OTM nicht auch die OSM-Höhenlinien nutzt, sondern die auf SRTM-Daten basierenden? Hat das irgendwelche Vorteile?

  2. Kennt jemand ein Programm, mit dessen Hilfe man das OTM-Kartenmaterial mit dem zur OTM-Karte bereitgestellten SRTM-Datenmaterial “verheiraten” kann, so daß die Karte mit mehr Geräten vollständig genutzt werden kann?

Über entsprechende Aufklärung würde ich mich freuen und danke dafür im voraus.

Schöne Grüße

tracker51

Es gibt keine “OSM-Höhenlinien”. Beide Karten nutzen dieselben Daten.

… und wenn wir versuchen würden, aus den ele-Tags welche zu basteln, würden wir uns sehr wundern¹ :slight_smile:
SRTM ist AFAIK die einzige freie Quelle für ein digitales Geländemodell.

–ks

¹ Als mir erstmalig auf einer tischebenen Autobahn (A 67 bei Groß-Gerau) zwei direkt gegenüberliegende ele-Tags mit 9 Dezimalstellen, aber ~ 20 m Höhenunterschied aufgefallen waren, habe ich den Ersteller kontaktiert. Er war sich dessen gar nicht bewusst, die Tags wurden automatisch aus seinem GPX übernommen, wo sie, wie man sich schon gedacht hat, von einem nicht-kalibrierten barometrischen Höhenmesser reingeschrieben wurden.

Hmm. Ich hatte mich mit dieser Frage - ebenfalls unter Verweis auf die OTM und die SRTM-Daten - direkt an die Freizeitkarten-Macher gewandt. Mir wurde geantwortet, daß die Höhendaten im OSM-Format vorliegen und mit den OSM-Daten gemerged werden.

Da steh’ ich nun, ich armer Tor, und bin so klug als wie zuvor …

Ciao

tracker51

DAs mag ja sein, dass jemand die Höhenlinien-Daten in das OSM XML Dateiformat konvertiert hat, trotzdem sind das keine von OpenStreetMap selbst erfasste Daten.

Den ele=… Daten in OSM ist höchstens bei Berggipfeln zu trauen, und selbst dann …

Die Höhenlinien- und Hillshading- Daten stammen eigentlich immer ursprünglich aus den SRTM-Daten der Nasa, oder aus einer Kombination der SRTM- und ASTER-Daten.

Die Höhenlinien werden dabei in der Regel entweder als Shapefiles, oder in einer PostGIS “contours” Tabelle abgelegt. Dass da jemand statt dessen OSM XML (oder .pbf) als Datenformat nutzt wäre mir neu, technisch möglich ist es aber (wenn auch vermutlich wenig performant).

Die meiste Mühe mit der Vorverarbeitung der Weltraumradar-Höhendaten hat sich das Team hinter der OpenSnowMap gemacht, viele andere, darunter (zumindest eine Zeit lang) OpenTopoMap, und auch ich auf print.get-map.org, nutzen die Daten die wir freundlicherweise von OpenSnowMap zur Verfügung gestellt bekommen haben.

Das ist gängige Praxis zur Erzeugung vieler Offline-Karten.

Es gibt diverse Möglichkeiten, sinnvoll ist das aber fast nie. Man kann mit dem GMapTool die Kacheln der beiden gmapsupp.img in einzelne *.img zerlegen und dann z.B. mit mkgmap wieder zu einer gmapsupp.img (oder gmapi für den PC) zusammenfügen.
In welchher Situation bzw. mit welchem Gerät hast Du denn ein Problem? Hast Du ein Gerät, das nur eine einzige Datei im gmapsupp Format unterstützt?

Kannst Du erklären, warum das nicht sinnvoll ist?

Basecamp und auch das ältere Mapsource können nicht beide Dateien gleichzeitig anzeigen. Mein Garmin 64s kann das zwar, aber die älteren GPSmaps, die ich besitze, halt auch nicht.

Deshalb suche ich eben nach einer Mischmöglichkeit.

Ach ja: Weiß jemand, warum die OTM-Macher keine kombinierte Datei anbieten? Da die Online-Karte ja die Höhenlinien enthält, müßte doch ein kombinierter Datensatz existieren …

Ciao

tracker51

Bei der online-Karte kommen die Höhenlinien aus einer eigenen Datenbank. Die Daten werden erst zusammengeführt, wenn das Bild einer Kartenkachel erzeugt wird.

Sinnvoll ist es eigentlich nur, wenn man die Daten in Basecamp/Mapsource anschauen will oder eben auf bestimmten älteren Devices, die nur ein gmapsupp unterstützen. Ich finde die Garmin Programme ziemlich übel, daher verwende ich die für die Planung überhaupt nicht, nur zum Entwickeln/Debuggen von mkgmap.
Also mal konkret am Beispiel von Andorra, wie es in etwa mit mkgmap unter Windows geht:

  1. Falls noch nicht vorhanden: Java JVM und mkgmap installieren
  2. Download der PC Version andorra_pc.zip und entpacken nach z.B. c:\temp
    Danach sollte also ein Ordner C:\temp\andorra mit Unterordner data und einer readme.txt vorhanden sein.
  3. Eine Cmd-Shell öffnen und in den Ordner wechseln, in dem Basecamp seine Daten findet, bei mir ist das c:\ProgramData\Garmin\maps.
    Evtl. ist das ein versteckter Ordner aber das sollte nicht stören.
  4. Sicherstellen, das Basecamp und Mapsource nicht laufen. Das Kommando
java -Xmx2G -jar c:\temp\mkgmap-r4295\mkgmap.jar  --latin1 --index --family-name=OTM-Andorra --overview-mapname=OTM-Andorra --series-name=OTM-Andorra --gmapsupp --gmapi --family-id=3602 c:\temp\andorra\data\3*.img c:\temp\andorra\data\OpenTopoMap.typ

erzeugt sowohl die kombinierte gmapsupp.img als auch einen *.gmap Ordner, den Basecamp direkt verwenden kann.
In Basecamp sollte also ein neues Kartenprodukt “OTM-Andorra” auftauchen.
Allerdings behauptet Basecamp bei dieser Methdoe, die Karten enthalte keine Höheninfos und berechnet daher auch kein Höhenprofil.
Im Moment weiss ich nicht, woran das liegt.
5) Für Basecamp braucht man nur den *.gmap Ordner, die gmapsupp.img ist fürs Device, die anderen erzeugten Dateien kann man löschen

Wenn es so mit Andorra klappt, dann kannst Du es mal mit einer größeren Karten probieren, dann evtl. den Parameter -Xmx erhöhen, z.B. auf -Xmx6G.

Wahrscheinlich, um Rechenzeit zu sparen. Die Kachelgrenzen der Höhendaten stimmen nicht mit denen der einzelnen Länder überein.
Höhendaten müssen offensichtlich nicht täglich neu gerechnet werden, eigentlich nur dann, wenn wirklich mal jemend neue SRTM Daten anbietet oder vielleicht wenn Fehler in den Programmen zur Erzeugung der Kacheln behoben wurden.
Ich vewende für meine selbst produzierten Karten ein anderes Verfahren, dabei werden die Höhendaten ins OSM Format konvertiert, dann mit den aktuellen OSM “vermischt” und anschließend daraus eine Karte berechnet. Bei diesem Verfahren kann Basecamp dann auch eine Graphik mit Höhenprofil für eine Route berechnen, vermutlich weil dann alles in einer Kachel ist.
Siehe auch http://www.openfietsmap.nl/procedure

Das österreichische “OpenData Portal” stellt für viele europäische Länder digitale Geländemodelle zur freien (privaten) Nutzung zur Verfügung. Diese sind deutlich genauer als die SRTM Daten:

Ein LocusMap Nutzer hat sich sogar die Mühe gemacht diese so aufzubereiten, dass sie in LocusMap nutzbar sind (und die SRTM Daten ersetzen können die man dort herunterladen kann).

http://data.opendataportal.at/dataset/dtm-germany

Und hier der Thread aus dem LocusMap Forum: https://forum.locusmap.eu/index.php?topic=5363.0

Also fassen wir das Thema mal ein wenig zusammen:

Höhenlinien werden immer aus einem Höhenmodell erzeugt. Ich kenne folgende, die mit OSM nutzbar sind:

  • NASA SRTM: enthält Fehler und Lücken
  • CIAT/CGIAR: SRTM mit Fehlerbereinigung
  • Viewfinderpanoramas: Zusammenstellung aus unterschiedlichen Quellen

Höhenmodelle, die nicht die gesamte benötigte Gegend abdecken sind sehr schwer zu nutzen, da man dann sehr kompliziert zusammenstückeln muß und es an den Grenzen zu häßlichen Artefakten kommen kann.

(Für Online-Karten werden die Höhenlinien nach der Berechnung normalerweise in einer PosgGIS Datenbank gespeichert oder in Shapefiles abgelegt. Das spielt aber für das Originaltopic keine Rolle.)

Für Garminkarten müssen sie durch mkgmap geschleust werden. Ich glaube mkgmap hat selbst auch eine Höhenlinienfunktion, aber wenn man sie selbst erzeugen will, muß man sie erst mal als Pseudo-OSM-Daten speichern und nach mkgmap füttern.

Dabei kann man sich je nach Geschmack entscheiden, ob man die Höhenlinien-Daten mit echten OSM-Daten mischt und eine integrierte Karte bekommt oder ob man die Höhendaten einzeln mit einer eigenen Karten-ID durchschickt, so daß sie auf dem Gerät kombiniert werden müssen.

Einzelne Höhenlinien haben den Vorteil, daß sie nicht jedesmal neu berechnet werden müssen, obwohl sie sich nie ändern und daß sie theoretisch mit jeder anderen Karte ohne Höhenlinien kombiniert werden können.

Kombi-Karten haben den Vorteil, daß sie auf allen Geräten funktionieren und daß es möglich ist, einzelne Kacheln und Kartenausschnitte auf Geräte mit eingeschränktem Speicher zu übertragen.

Das nachträgliche “Verheiraten” von einzelnen Höhenlinien dürfte fast unmöglich sein. Garminkarten sind in hunderte von Kacheln aufgeteilt und die Höhenlinien und die eigentliche Karte haben völlig unterschiedliche Kachelaufteilungen. Die lassen sich auch mit Werkzeugen wie GMapTool nicht wieder zur Deckung bringen. Außerdem würden die Kartenkacheln durch die zusätzlichen Daten aus den Höhenlinien vermutlich überlaufen - die Daten pro Kachel sind begrenzt, daher die Aufteilung.

Als Alternativen kann ich Dir noch meine Karte (Topo mit Höhenlinien) empfehlen oder meinen Map Composer, mit dam man sich seine eigene Karte mit integrierten Höhenlinien erstellen kann, ohne sich näher mit der Technik dahinter zu beschäftigen. (Links siehe Signatur)

Ich hab auch ein GPSMAP 60CSx, das nur eine *.img akzeptiert. Du kannst aber in Basecamp/Mapinstall (und in Mapsource wohl auch) Kartenkacheln aus verschiedenen Karten auswählen und ZUSAMMEN als eine Karte ans Gerät schicken. Am Gerät kannst du dann die Karten getrennt ein- und ausschalten, was durchaus Vorteile hat. In Basecamp selbst sind Karte und Höhenlinien aber getrennt. Hier hab ich beschrieben, wie ich vorgegangen bin. Also “garmin” Variante mit gmaptool gesplittet und mit install.bat installiert. Die Höhenlinien von Speichennippel gefallen mir besser, die basieren auch teilweise nicht mehr auf SRTM sondern auf den viel besseren Lidar Daten, die jetzt von immer mehr Ländern zur Verfügung gestellt und von Sonny aufbereitet wurden.

Man könnte das Ganze noch auf die Spitze treiben: von Kleineisel gibts die Höhenlinien getrennt im 10m, 20m und 100m Abstand. Die könnte man dann auch zusammen ans Gerät schicken und dort getrennt ein- und ausschalten. Hab ich aber bisher noch nicht versucht.