MapComposer und Multipolygone

Hallo,

ich benutzte den MapComposer von Nop, um mir img Karten für Glopus zu erstellen. Funktioniert soweit erstaunlich gut. Nur mit den Multipolygonen gibt es offensichtlich Probleme. Habe hier mal gelesen, dass MapComposer komplizierete MPs nicht auswerten kann, habe aber beobachtet, dass auch einfach MPs nicht korrekt dargestellt werden. So z.B. Berlin, die Havel überflutet alle Inseln (Pfaueninsel, Schwanenwerder), und der Wald westlich von Wannsee wird nicht dargestellt. Dachte vielleicht liegt es an Glopus, aber in Mapsource ist es dasselbe. Solange die “outer” und “inner” Ways noch Tags haben, kann man einiges mit Ersetzungen wieder sichtbar machen, z.B. die Inseln. Aber für den besagten Wald fällt mir nichts ein, denn da ist das Tag nur in der Relation. Ich hatte die neuste Version 0.88a verwendet, aber interssanterweise wird der Wald mit der Version 0.86 angezeigt (die Inseln allerdings auch nicht)! Ist da beim Umbauen vielleicht etwas verloren gegangen? Angesichts der Tatsache, das die MPs wohl immer zahlreicher werden, wäre eine Lösung dieses Problems wirklich schön. Denn wie gesagt, den MapComposer finde ich als OSM-Neuling ganz super. An dieser Stelle herzlichen Dank an den Entwickler.

Grüße, hapega

Hallo,
ich würde dich bitten, die Multipolygone so zu tagen, wie es im wiki erklärt ist und nicht irgendwie, nur damit MapComposer dir das richtig darstellt. Das könnte dann zur Folge haben, dass andere Programme, die sich an den “Standard” halten falsche Ergebnisse liefern.

Was du probieren könntest, wäre dir eine aktuelle Version von mkgmap zu laden und deine vorhandene ersetzen.

Moin, moin

Ich habe die neue Version von mkgmap probiert, geht aber leider überhaupt nicht, zumindest macht er am Ende keine img. Gibt es denn eigentlich noch andere User, die den Composer benutzen? Oder wäre die Empfehlung, ganz darauf zu verzichten und den harten Weg über die Befehlszeile zu gehen?

Taggen tue ich (bislang) übrigens nicht, will ja nichts kaputt machen. Ich versuche nur, die vorhandenen Tags irgendwie so auszuwerten, dass ich ne schöne Karte bekomme. So jetzt aber auf Maitour…

Grüße, hapega

Haloo hapega,

ich empfehle die folgende Kombi aus MapComposer und mkgmap

  1. aktuellste Version von mkgmap verwenden
  2. OSM Dumps von http://download.geofabrik.de/osm/ runterladen
  3. splitter zum Splitten der Dumps in Tiles verwenden
  4. MapComposer verwenden, um die Stylefiles von mkgmap zu erzeugen
  5. mkgmap mit Kommandozeile selber aufrufen. Evtl. kann man die Kommandozeile von MapComposer erzeugen lassen?

Soweit ich das überblicke, gehen die Multipolygone beim Splitten der Dumps in Tiles durch MapComposer kaputt. Die Kombi splitter/mkgmap arbeitet hier deutlich zuverlässiger (abgesehen von einigen wenigen Fehlern). Von daher sollte man das Splitten nicht mit MapComposer machen.

Have fun!
WanMil

Eine kleine Ergänzung zu WanMil möchte ich noch machen.

MapComposer erstellt dir Style-Files für mkgmap, die du auch verwenden kannst. Allerdings wenn du Ersetzungen im MapComposer machst, fließen die nicht in die Styles ein. Um das Ersetzen kümmert sich MapComposer intern. Du musst also die Ersetzungsregeln, die du im MapComposer nutzt in den Style von mkgmap übertragen.

Das ist kein großes Hexenwerk und bei Problemen findest du hier Hilfe.

Hi,

nutze den Composer und kenne das Problem. Leider habe ich auch keine Lösung.

Gruß, Thomas

Besten Dank für die Tips. Ich habe mal die Doku von mkgmap quergelesen (als ich vor längerer Zeit darin gestöbert hatte, nur Bahnhof). Wenn ich das jetzt richtig verstehe, muss ich also die mapstyle-Dateien vom MapComposer händisch nachbearbeiten. Andererseits sehe ich auch etliche Features, die der MapComposer nicht bietet. Wenn ich wieder Zeit habe, werde ich mich da mal tiefer reinknien.

Grüße, hapega

Habe mir jetzt mal die aktuelle MkgMap-Version runtergeladen. Tatsächlich werden nun von MapComposer keine IMG-Dateien mehr erzeugt. Fehlermeldung bekomme ich jedoch auch keine.

Weiß jemand Rat?

softcake

Hallo,
genau wegen diesem Problem mit den Polygonen habe ich vor einiger Zeit genau das gemacht was WanMil (Trade4) empfohlen hat. Und mit ein wenig Einarbeitung in mkgmap bekommt man mit der Zeit immer bessere Ergebnisse, jedenfalls werden die Polygone seither ordentlich erstellt.
Ne kleine Anleitung von mkgmap unter WIN habe ich hier mal angefangen aufzuschreiben. http://altersachse.de/013-gps/garminbauen.php
Gruß und noch schönes WE

Hallo,

habe jetzt endlich mal Zeit gefunden und mich in die “per-Fuß”-Methode mit Mkgmap eingearbeitet. Siehe da - klappt hervorragend. Auch die komplizierteren Multipolygone werden angezeigt.

Nun hätte ich gleich eine weitere Frage. Ich möchte an das ref-Tag von Wanderweg-Relationen ran und als name-Tag anzeigen. Das ist prinzipiell kein Problem. Ich habe hierzu eine Style-Datei “relations” erzeugt, welche folgenden Eintrag enthält:

type=route & route=hiking {
apply {
# Neue Variable ‘route_ref’ kann in lines-Datei abgefragt werden:
set route_ref=‘${ref}’;
}
}

Das funktioniert für genau eine Relation. Wie komme ich aber an die ref’s ran, wenn sich auf einem Weg mehrere Wanderweg-Relationen befinden?

Gruß, softcake

type=route & route=bicycle & ( network=radweit | radweit=yes | network=icn | icn=yes | network=ncn | ncn=yes | network=rcn | rcn=yes | network=rcn | rcn=yes | network=tcn | tcn=yes | network=lcn | lcn=yes ) { apply { set rrk_Radweg=yes ; set rrk_name='$(rrk_name),${ref}' | '$(rrk_name),${name}' | '${ref}' | '${name}' } }

Hier mal meine Regel für Radrouten. Im Prinzip musst du dein set route_ref=‘${ref}’; mit einem set route_ref=‘$(route_ref),${ref}’ | ‘$(route_ref),${name}’ | ‘${ref}’ | ‘${name}’ ersetzen.

Danke! Hat funktioniert.

Gibt es eigentlich eine Möglichkeit, den angezeigten Text auf eine feste Länge zu kürzen?

Nächstes Problem, allerdings etwas OT:

Karte erzeugt, in Mapsource geladen, zusammen mit SRTM-Karte auf Garmin Legend HCx übertragen. Leider werden die Höhenlinien nicht angezeigt. Nur kurz wenn ich die Karte verschiebe.

Prinzipiell sollte alles so sein wie bei meiner alten, mit MC erzeugten, Karte (Fam-ID 101 usw.). Im Mkgmap-CFG-File ist “transparent” angegeben.

Was könnte die Ursache sein?

Gruß, softcake

Die draw-priority der Höhenlinien muss höher sein als die der anderen Karte.

Das Namen kürzen macht das Garmin automatisch…es gibt nur eine maximale Anzahl von bytes für den Namen.

Ok, hat nun auch funktioniert!

Konnte mittlerweilen SRTM-Höhenlinien in meine Karte einbinden. Leider werden die Höhenmeterangaben an den Linien nicht angezeigt. Fehlt da wieder irgendein Parameter?

Danke & Gruß, softcake

Was hast du denn für Regeln in deinem lines-file dafür drin?

Das keine Zahlenwerte angezeigt werden ist AFAIK normal. Ich muss dazu auf eine der Linien tippen, so dass dessen Eigenschaften angezeigt werden.

Alles klar, habe folgende Zeilen im style-file für lines hinzugefügt:

*contour=elevation & contour_ext=elevation_minor { name ‘${ele|conv:m=>ft}’; } [0x20 resolution 23]
contour=elevation & contour_ext=elevation_medium { name ‘${ele|conv:m=>ft}’; } [0x21 resolution 22]
contour=elevation & contour_ext=elevation_major { name ‘${ele|conv:m=>ft}’; } [0x22 resolution 21]
*

Damit klappt es, die Höhenmeter werden auch angezeigt.

Nächstes Problem:

Ich habe im TYP-File für den Garmin-Hintergrund (Legend HCx) als Farbe weiß für die Fläche 0x4b angegeben. In Mapsource werden auch alle Bereiche ohne Polygons schön weiß dargestellt. Am Gerät leider nicht, dort sehe ich den gelben Hintergrund der Basemap. Wenn ich die Basemap ausschalte, kommt der schraffierte Hintergrund.

Wie bringe ich den Legend dazu, auch weißen Hintergrund anzuzeigen? Oder anders - wie bringe ich mkgmap dazu, einen weißen Hintergrund zu erzeugen? Wenn ich die Option --transparent weglasse, verschwindet meine Karte unter dem weißen Hintergrund der Höhenlinien.

Mein Gedanke war, ich könnte ein splitter-File (xml) mit einer komplett weißen Fläche von der Größe meiner Karte mit sehr niedriger Draworder zur Verfügung stellen. Hab’s aber noch nicht probiert.

softcake