habe soeben die aktuellste Version von Mkgmap heruntergeladen und wollte ‘schnell mal’ eine neue Karte generieren. Leider bringt mir Mkgmap eine Fehlermeldung:
Style file [Pfad zu Stylefiles]\styles contains multiple styles, use option --style to select one.
In der Doku ist der --style-Parameter zwar erwähnt, jedoch nur unzureichend beschrieben:
*–style=name
Specify a style name. Must be used if --style-file points to a directory or zip file containing multiple styles. If --style-file is not used, it selects one of the builtin styles. *
Der Parameter --style-file zeigt auf ein Verzeichnis mit meinen Style-Dateien points, lines, polygons, relations, version. Das hat immer funktioniert und wurde nicht verändert.
Tja, was soll ich denn hier eintragen? Ein --style=mystyle funktioniert schon mal nicht.
Hab nochmal geforscht, konnte aber leider keine Lösung des Problems finden. Der Parameter “–style” soll angeblich nur nötig sein, wenn man Zip-Files verwendet. Mach ich aber nicht. Ich hab meine Style-Dateien ungezippt in einem Unterverzeichnis. Es gibt auch nur einen Style.
hat bislang funktioniert. Mit der aktuellen Mkgmap-Version gibt es eine Fehlermeldung, es wird die Verwendung des “style”-Parameters verlangt. Man soll einen Style-Namen angeben, also in etwa so:
Aber das funktioniert auch nicht. Es kommt die Fehlermeldung “Could not open style MeinStyle in c:\works\garmin\MeineMap\styles”.
Was will Mkgmap hier für eine Information haben - und in welcher Form? Wie soll ich den Styles einen Namen geben? Es handelt sich übrigens um die Version 3185.
Seit jeher genügt der Parameter --style-file. --style ist nur nötig, um einen bestimmten Style von mehreren (aus Zip oder Unterverzeichnis) auszuwählen. Bei mir habe ich diesbezüglich keine Veränderung mit neuen Versionen.
Edit: In #1 vermisse ich die Datei “options”. Übergibst du die verwendeten levels über die Befehlszeile? (Kann ja sein, dass die Datei mit zumindest auskommentierten Zeilen vorhanden sein muss.)
Richtig, im Styles-Verzeichnis befinden sich die Dateien lines, points, polygons, relations, version. Die Datei options habe ich noch nie verwendet. Auch jetzt nicht.
Ist sie zwingend notwendig? Wäre mir neu.
Edit:
Bin einen Schritt weiter. Ich hatte bislang im Style-Verzeichnis ein paar Backup-Unterverzeichnisse mit alten Styles. Nachdem ich die Verzeichnisse entfernte, gab es eine neue Fehlermeldung:
Error in style: Error: invalid type 0x4a for POLYGON in style file polygons, line 108
Das ist der Map-Hintergrund, der ist reserviert und kann über das Typfile geändert werden. 0x4b ist der zweite Typ dieser Art - einer für die Übersichtsmap, einer für die Kacheln.
Ok, alles klar. Das wusste ich nicht. Denke, den Rest bekomme ich hin.
Edit:
Zu früh gefreut. Mkgmap generiert mir jetzt zwar eine schöne Karte, doch leider werden keinerlei Namen mehr angezeigt. Weder bei Points, noch bei anderen Objekten.
Habe testweise die Mkgmap-Option name-tag-list=name gesetzt, was aber nichts bringt. Scheint, als wurde in den letzten zwei Mkgmap-Jahren ganz schön viel am Programm geändert…
Oh ja, ist schon eine zeitlang her… Man kennt das ja: Never touch…
Ich kann das von hier aus nicht testen, darum schon mal vorab die Frage: Um die alte name-Funktionalität herzustellen, sollte doch ein name= {name ‘${name}’}* zu Beginn der Style-Datei reichen? Oder wäre in allen Fällen die addlabel-Funktion einzusetzen, da bei ‘name’ nur von einer ‘helper function’ die Rede ist.
ich würde den grundsätzlichen Aufbau der Style-Dateien so anpassen, wie im neuen mkgmap-default aufgeführt (das erspart auch die Verwendung der inc/compat_xxx-Dateien wie im default-style). Zukünftig werden auch helfende Hinweise erleichtert, weil die Möglichkeiten von Fehlerquellen nicht zu komplex werden.
Konkret heißt das: Schau dir mal den default-style an, besonders den letzten Abschnitt “” in lines, points und polygons.
Zu name und addlabel: Der Befehl “name” füllt immer das erste der vier im Garmin-Format vorhandenen Namens-Felder aus (bzw. überschreibt es). Im Gegensatz dazu befüllt “addlabel” das nächste freie Feld. So kann zum Schluss in Feld 1 der Name stehen, in Feld 2 die Ref usw. Diese weiteren Felder werden für Routinghinweise und Adresssuche ebenfalls herangezogen - allerdings können sich Navis und Software dabei unterschiedlich verhalten.