Karte im AllInOne-Look mit mkgmap für ein etrex erstellen

Hallo allerseits,
nach ein paar Wochen „passiven" Mitlesens hier im Forum, habe ich nun “aktiv” :slight_smile: eine Frage.

Bisher habe ich für mein „Etrex Legend HCX" immer die „allinone germany-daily" Karte verwendet, deren aussehen mir sehr gut gefällt. Da ich zum einen gerne eine aktuelle Karte habe, mir aber andererseits nicht jedes Mal über 1 GB runterladen möchte, habe ich mich nun dran gemacht mir meine eigene Karte zu erstellen (Betriebssystem Windows XP).
Dazu habe ich mkgmap verwendet, nach zugehöriger Anleitung aus dem Wiki [http://wiki.openstreetmap.org/wiki/DE:Mkgmap]:

  • mkgmap runtergeladen und eigenes Verzeichnis erstellt (D:\Programme\mkgmap)
  • mit JOSM einen Bereich abgespeichert, ihn der Einfachheit halber wie im Beispiel in data.osm umbenannt und diesen ins angelegte mkgmap-Verzeichnis verschoben
  • mit „java -jar mkgmap.jar --gmapsupp data.osm" eine Karte erzeugt

Das hat soweit auch alles geklappt, nur habe ich Probleme die Daten im gewohnten allinone look erscheinen zu lassen. Was ich bisher gemacht habe:

  • die Datei aiostyles.7z von [ftp://ftp5.gwdg.de/pub/misc/openstreetmap/download.openstreetmap.de/aio/] runtergeladen
  • Datei entpackt und das Verzeichnis basemap_style (beinhaltet die Dateien: diff; info; lines; lines~; options; points; points.old; points~; polygons; polygons~; relations; version), sowie die TYP-Datei „basemap_style" in mein Verzeichnis D:\Programme\mkgmap kopiert.

Wenn ich’s bisher richtig verstanden habe sind die Dateien im basemap_style-Verzeichnis dafür da, WELCHE Inhalte der Datenbank später auf der Karte erscheinen werden und die TYP-Datei beinhaltet Vorgaben WIE die Dinge später aussehen werden.

Nun habe ich zwei Probleme:

  1. Mein Style wird beim Test mit „java -jar mkgmap.jar D:\Programme\mkgmap\basemap_style --list-styles" nicht erkannt. Folgendes wird ausgegeben:
    „The following styles are availeble: Could not open file D:\Programme\mkgmap\basemap_style".
    Daher funktioniert dann wahrscheinlich auch nicht „java -jar mkgmap.jar --style=basemap_style --style-file=D:\Programme\mkgmap\basemap_style --gmapsupp data.osm" → Die Karte hat immer noch den Standart-Style von mkgmap.
    Wo könnte der Fehler liegen?

  2. Habe ich noch nicht verstanden, wie ich mkgmap dazu bringe die TYP-Datei zu verwenden. „Erledigen" das die Dateien im basemap_style-Verzeichnis oder muss ich mkgmap mit einem weiteren Befehl dazu auffordern?

HELP :slight_smile: Ich bin gerade ein bisschen ratlos

Hi,
siehe:
http://wiki.openstreetmap.org/wiki/DE:All_in_one_Garmin_Map/Map_generation

Chris

Juuuchuuu!!
ein Luftsprung um 0:20 in Deutschland → es funktioniert.
Des Rätsels Lösung: Die Angabe der family-id hat mkgmap gefehlt.

Für alle OSM-Anfänger dieser Welt hier das mögliche vorgehen:

  • einen TYP Editor runterladen, beispielsweise den TYPViewer
  • TYP Datei mit dem Editor öffnen
  • links, recht weit oben steht FID (family-id) und dahinter eine Zahl (bei mir wars eine 4)
  • diese Zahl in den Befehl für mkgmap einbauen, sowie die TYP-Datei mit angeben

Bei mir sah das dann so aus:
java -jar mkgmap.jar --style-file=D:\Programme\mkgmap\basemap_style --family-id=4 --gmapsupp basemap_style.TYP data.osm

Ein großes Dankeschön geht an Chris für den entscheidenen Hinweis. Vor ein paar Monaten hatte ich schon mehrere Anläufe zum Erstellen einer eigenen Karte genommen und irgendwann die Aktion gefrustet aufs Eis gelegt. Teilweise ist es nen ganz schöner Brocken sich bei OSM durchzufuchsen, aber dann um so schöner wenns klappt… :slight_smile:

Ich habe auch eine kleine Frage zu mkgmap. Vor einem Jahr hab ich schon paar Mal selber Karten Garmin-Karten erstellt, allerdings immer aus OSM-XML-Dateien. Mangels Dokumentation musste ich mich bisschen im Code umsehen, bin aber nicht fündig geworden: Gibt es die Möglichkeit, als Datenquelle für mkgmap eine psql-Datenbank zu verwenden? Es bietet sich doch an, regelmäßig neue Karten aus einer Datenbank abzuleiten, die sowieso für eine Online-Karte vorhanden ist und aktuell gehalten wird.
Macht bereits jemand erfolgreich etwas in dieser Richtung? :slight_smile:

Nicht das ich wüsste. Vor einiger Zeit hat man mal drüber nachgedacht, die gesplitteten Datenhäppchen nicht mit dem Splitter zu erzeugen, sondern mit einer separaten, lokalen Overpass-API. Ich hab keine Ahnung von Datenbanken, kann dir also nicht sagen, ob es sinnvoll ist, aus der Render-DB solche Datenhäppchen zu erzeugen. Dabei musst du beachten, dass alle Datenhäppchen einer Karte auf dem selben Stand sein müssen. Ansonsten ist die Karte nicht konsistent. Bspw. in der einen Kachel ist der Weg noch drin, in der benachbarten nicht mehr oder es gibt den POI zweimal, weil er in der Zwischenzeit von der einen Kachel in die andere geschoben wurde.

Dein Weg müsste also so aussehen:
Aktualisierung stoppen
Datenhäppchen erzeugen
Aktualisierung wieder laufen lassen
mkgmap starten.

ps: Manchmal ist es besser einen neuen Thread zu starten, als einen beliebigen alten Garmin-Tread auszugraben :wink: