Wie sind Multipolygone mit dem mapsforge-map-writer zu verarbeiten?

Hallo Leute,

ich erstelle mir meine eigenen offline-Karten für Android mit Osmosis und dem mapsforge-writer-plugin, diesbezüglich hatte ich hier schon mal angefragt wie dies geht.

Soweit läuft auch alles gut, aber nun ist mir heute aufgefallen, dass auf meinen eigens erstellten Karten (map-Dateien) keine Relationen/Multipolygone angezeigt werden, z.B. keine Wälder, bei denen die Daten (z.B. landuse=forest) nur an der Relation stehen und nicht am way selbst, hier ist ein Beispiel eines solchen Objekts.

Ich nutze die Apps “Advanced MapViewer” und Locus für die Anzeige der map-Dateien unter Android.

Nun habe ich mir nochmal das Tagging-Schema des mapsforge.writers angesehen (das auch), aber dort ist nur die Rede von “pois” und “ways”, aber nicht von “relations” o.ä. ?! Hat da jemand von Euch einen Plan wie mit solchen Objekten umzugehen ist? Oder muss ich die osm-Rohdaten vorher noch umwandeln, z.B. alle Relationen zu ways, weil der mapsforger-writer gar nicht mit Relationen umgehen kann?

Für jeden Hinweis wäre ich sehr dankbar, gruß fireball2

Hat MapWriter eine Fehlerdatei für das Objekt erzeugt?

Gruß Klaus

Hallo Klaus,

danke, dass Du Zeit für mich hast. Ich würde sagen, da wurde keine Fehlerdatei erzeugt, weder im Plugin-, Osmosis-, Aufruf- oder Ausgabeordner. Derzeit wandle ich die Datei wie folgt um:

bin\osmosis --rx D:\Karte.osm --mw file=D:\Karte.map bbox=50,12,51,13 map-start-position=50.5,12.5 comment=meine_Karte tag-conf-file=D:\Tools\osmosis-0.42\plugins\tag-mapping.xml

Der Schalterdebug-file” ist doch nicht erforderlich, oder? Was für eine Fehlerdatei würde denn Osmosis oder das mapsforge-writer-plugin erzeugen (txt,log,…)?

Gruß fireball2

Das MapWriter-Plugin würde Dateien nach diesem Schema anlegen: DebugOuterWay_1201802668.txt

Gruß Klaus

PS: Bei mir fehlt die genannte Polygon-Relation (Waldgebiet) im übrigen auch … möglicherweise liegt ein Problem mit der Relation vor.
Ähnliche Probleme habe ich mit einigen Postleitzahl-Relationen …

edit: Möglicherweise ist dies die “Problemstelle” (Relation: Geyrischer Wald (1116032)) … müßte der Erfasser mal ändern.

Also ich habe keine solche Datei auf meinem System, nichtmal mit dem Schalter “debug-file=true” wird mir eine solche erzeugt. Auch die Textausgabe in der Konsole zeigt keinen Fehler an. Aber es ist beruhigend, dass bei Dir das gleiche Phänomen auftritt. Ich habe die betreffende Stelle gleich selbst repariert, diese Gegend erinnert mich leider an den Thread Multipolgonwahnsinn - oder: Durchblick war gestern!.

Edit:
Hurra, der Wald wird nun wieder ordnungsgemäß dargestellt, vielen Dank für den Tipp. Es wäre natürlich toll, wenn mapsforge-map-writer bei solchen Objekten einen Fehler ausgeben würde, so dass man sich diese in OSM mal anschauen kann.

Wenn ich Dich schon mal in der “Leitung” habe, darf ich Dich mal noch was anderes Fragen?
Besteht eigentlich die Möglichkeit beim Mapsforger-writer-plugin auch mit Platzhaltern zu arbeiten?
Ich trage nämlich hin und wieder gerne mal wichtige Verkehrzeichen in OSM ein, diese hätte ich gerne mit einem generellen Verkehrzeichensymbol auf meinem Handy dargestellt. Nur um zu wissen, “hier ist schon (irgend) ein Verkehrszeichen drin”. Nun ist es ja nahezu unmöglich alle Verkehrzeichen in die xml-Datei einzutragen, man denke nur mal an die unterschiedlichen Geschwindigkeiten oder ähnliches. Folgendes scheint aber nicht zu funktionieren, dokumentiert ist in der Wiki auch nichts:

<pois>
  <osm-tag key="traffic_sign" value="*" zoom-appear="18" />
</pois>

Wildcards sind in der Steuerdatei für den MapWriter (tag_mapping.xml) nicht möglich. Es sind immer vollständige Objekte “key=value” anzugeben. Du könntest aber z.B in deinen lokalen Daten (!) ein zusätzliches Tag einfügen und dieses für die Darstellung benutzen.

Bespiel:
traffic_sign=DE:108[10] → als Tag bereits in OSM vorhanden
traffic_sign_importance = high → nur in deinen lokalen Daten vorhanden

In der MapWriter-Stuerdatei hättest du dann dies:


Gruß Klaus