DE:Mkgmap

From OpenStreetMap Wiki
Jump to navigation Jump to search

an unequal sign

Dieser Artikel ist eine deutsche Übersetzung des Originals (in der Regel auf Englisch), aber der Inhalt scheint unvollständig oder nicht aktuell zu sein! Bitte aktualisiere diese Übersetzung, wenn möglich.
Quick links
Documentation
Development
Download maps
Mkgmap4.png
Mkgmap-screenshot-6.png
Mkgmap-screenshot-9.png
Warnemünde.png

Mkgmap ist ein Kommandozeilen-Tool, das OpenStreetMap-Daten in Vektorkarten konvertiert, die in ein Garmin GPS-Gerät geladen werden können. Es erledigt die Konvertierung in einem einzigen Schritt, ohne von weiteren Programmen abhängig zu sein. Mkgmap unterstützt ausschließlich das OSM Kartendaten Format.

Das Programm wurde von Steve Ratcliffe geschrieben. Fehler oder Anregungen können mir per E-Mail zugesand oder auf die talk page gestellt werden.


Download

Das Programm ist nun als ZIP-Datei (besser verwendbar auf Windows-Rechnern) und natürlich auch als komprimierte TAR-Datei verfügbar. Die Inhalte beider Pakete sind gleich.

Die letzte stabile Version ist 4262.

Da der deutsche Download-Abschnitt nicht immer mit der englischen Beschreibung synchron ist, sollte dieser entsprechend eingesehen werden.

Download

Das Programm benötigt Java 1.8. Wenn dein Betriebssystem noch kein Java besitzt, dann installiere dieses.


Ubuntu, Debian und andere Linux Distributionen

Einige Linux-Distributionen (z.B. Ubuntu) enthalten mkgmap. Im Terminalfenster kann mkgmap installiert werden:

sudo apt-get install mkgmap

Eine Karte erzeugen

  • Generiere eine Datei die OSM-Daten enthält. Ich mache das, indem ich die Daten aus JOSM heraus abspeichere. Du kannst die Datei beliebig benennen — in dem Beispiel verwende ich den Namen data.osm. Du kannst natürlich auch eine größere Karte mittels XAPI, wie z.B. diese erzeugen (Beispiel für das UK Midlands Gebiet):
   wget http://www.informationfreeway.org/api/0.6/*[bbox=-3.5,51.5,-1.0,53.5] -O data.osm

oder

   curl -L "http://www.informationfreeway.org/api/0.6/map?bbox=-3.5,51.5,-1.0,53.5" -o data.osm
  • Um die Image-Datei für die Garmin-Karte zu erzeugen, öffne ein Command-Fenster (in Windows: start > ausführen > cmd)

Dann wechsle in dein Mkgmap Verzeichnis.
- von der aktuellen Pfadposition zum Stammverzeichnis navigieren: cd..
- vom Stammverzeichnis in einen Ordner wechseln: cd Odnername\Unterordnername

Dort führe den folgenden Befehl aus:

   java -jar mkgmap.jar [options] data.osm
  • Dies erzeugt eine Datei mit dem Namen 63240001.img

Es ist möglich, dass die Anwendung an einem bestimmten Punkt abstürzt. Meist geschieht dies, wenn du große Gebiete bearbeitest. Du erhältst dann den Fehler Exception in thread "main" java.lang.OutOfMemoryError: Java heap space. Wenn dies passiert, erhöhe einfach die Größe deines max heap space indem du folgendes eingibst:

   java -Xmx512M -jar mkgmap.jar [options] data.osm 

Dies würde 512Mb physikalischen Speicher deinem Prozess zuordnen.

Befehlszeilen Optionen

Für große Karten möchtest Du vielleicht einige Details der Standard-Karte verändern. Dafür gibt es Optionen, die du verwenden kannst. Wenn du mehrere Optionen verwendest, ist es einfacher, diese in eine Datei zu schreiben und anschließend beim Programmaufruf die -c Option anzuwenden. Für eine vollständige Erläuterung sieh dir die komplette Optionsliste an.

Verwendung
mkgmap [Optionen...] Datei.osm
Allgemeine Optionen
--version
Ausgabe der Programmversion.
--help[=Thema]
Gibt eine Hilfe zum gegeben Thema aus. Ohne Angabe eines Themas erhältst Du eine komplette Liste aller Themen.
-c Datei.cfg
Legt den Namen einer Konfigurationsdatei fest. In der Datei steht pro Zeile eine Optionsangabe in der Form option (ohne das Präfix '--') oder option=Wert, dies entspricht der Angabe in der Befehlszeile, nur dass die führenden ';' weggelassen werden.
Namensoptionen
-n Name
--mapname=Name
Ändert den Kartennamen. Garmin Kartennamen besitzen eine 8 stellige Zahl. Der Standard ist 63240001. Wenn du eine Karte für andere erstellst, ist es besser, den Namen zu ändern. Denn dann ist er eindeutig und es kommt nicht zu Kollisionen mit anderen Kartennamen.
Hinweis: Gib nur den Dateinamen ohne die Erweiterung ".img" an, da ansonsten Exception erzeugt wird.
--description=Text
Legt den Beschreibungstext für eine Karte fest. Diesen sieht man in QLandkarte, MapSource, auf dem GPS-Gerät etc.
--country-name=Name
Legt den Landesnamen der Karte fest. Standard ist "UNITED KINGDOM".
--country-abbr=ABBR
Legt das Landeskürzel für die Karte fest. Standard ist "GBR".
--region-name=Name
Legt den Regionennamen der Karte fest. Standardmäßig ist dies leer.
--region-abbr=ABBR
Legt das Regionenkürzel der Karte fest. Standardmäßig ist dies leer.
Label Optionen
--latin1
Diese Option ermöglich die Benutzung von non-ascii Zeichen in Straßennamen. Aktuell ist die Unterstützung hardwareabhängig. Einige Geräte unterstützen nur ASCII Zeichen. Mkgmap versucht, nicht darstellbare Zeichen zu konvertieren. Standardmäßig (ohne diese Option) werden die Zeichen mittels Transliteration umkodiert.
--charset=Name
Verwende den angegebenen Zeichensatz.
--code-page=number
Verwende die angegebene Codepage.
--lower-case
Erlaube die Verwendung von Kleinbuchstaben.
Hinweis: Dies funktioniert auf vielen, aber nicht auf allen Garmin Geräten.
Stil Optionen
Schau dir hierzu die custom style Dokumentation an.
--style=Name
Benutze einen anderen Style als den standardmäßig festgelegten.
--style-file=Datei
Aus welcher Datei soll der Style geladen werden? "file" kann ein Verzeichnis oder eine ZIP-Datei sein, die den Style enthält. Auch eine URL ist zulässig. Existieren dort mehr als ein Style kann mit dem "--style"-Argument der Style definiert werden, der benutzt werden soll. Aus Kompatibilitätsgründen kann auch eine map-features.csv angegeben werden. Siehe hierzu die Anpassungshilfen.
--list-styles
Listet die verfügbaren Styles auf.
--levels=GarminMapLevel:OSMZoomLevel,...
Ändert die Zuordnung der Kartenebene zur Zoomstufe auf dem Gerät. Siehe dazu auch die Anpassungshilfe. Der Standard ist "0:24,1:22,2:21,3:19,4:18,5:16", dies kann sich allerdings ändern.
--name-tag-list=key,...
Legt die Reihenfolge der bevorzugten Sprachen fest. (z.B. --name-tag-list=name:de,int_name,name:en,name)
Achtung: Die deutschprachigen Namen werden, gerade in Mittel- und Osteuropa, nicht mehr auf Straßenschildern verwendet. Für Navigationszwecke sollte daher die jeweilige Landessprache bevorzugt werden.
--map-features=file
Veraltete Option. Verwende statt dessen die Option --style-file.
Produktbeschreibungsoptionen
--family-id=ID
Eine Ganzzahl, die eine Produktfamilie kennzeichnet.
--product-id=ID
Eine Ganzzahl, die ein Produkt innerhalb einer Produktfamilie kennzeichnet. Meist ist sie einfach nur 1.
--series-name=Name
--family-name=Name
--area-name=Name
--overview-mapname=Name
Verschiedene Optionen
--block-size=Nummer
Ändert die in der generierten Karte verwendete Blockgröße. Es gibt keinen triftigen Grund, dies zu tun.
--net
Die generierte Karte hat die "lock to road"-Option.
--gmapsupp
Erzeugt eine Datei mit dem Namen gmapsupp.img, das per USB auf ein Garmin-Gerät geladen werden kann.
--ignore-osm-bounds
Ignoriert Grenzelemente ("bounds"), wenn OSM-Dateien gelesen werden.
--road-name-pois[=GarminCode]
Erzeugt einen POI für jede Straße mit Namen. Der Standard-Typecode für POIs ist bei Garmin 0x640a. Wenn gewünscht, kann mit dieser Option ein anderer Typecode spezifiziert werden.
--tdbfile=Datei.tdb
Erzeugt eine .tdb Datei.
--draw-priority=25
Falls zwei Karten den gleichen Bereich abdecken, steuert diese Option, in welcher Reihenfolge sie gezeichnet werden und welche Karte obenhalb der anderen liegt. Höhere Werte werden oberhalb derer mit niedrigeren gezeichnet.
--transparent
Erzeugt eine transparente Karte, so dass bei zwei übereinander liegende Karten des gleichen Gebietes die obere Karte nicht die darunter liegende verdeckt. Dies ist nützlich für Konturenlinien Karten.

weiterführende Links