Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #31176
    SaschaT
    Participant

    Hallo,

    wenn ich mit dem Rad und einem Reifendruck von 5-7 Bar unterwegs bin, dann ist es nicht egal, ob eine Route über Asphalt oder über Kopfsteinpflaster verläuft. (Aber eigentlich sollte dies auch Auto- und Motorradfahrer interessieren.)
    Ich habe fast alle im Netz zu findenden Themes durchprobiert. Etliche davon werten das surface-Tag für highway aus. Indessen konnte ich bei diesen jeweils keinen Unterschied in der Darstellung feststellen. (Verwende Cruiser/PC zum Testen.) Ich erstellte eigene vereinfachte Themes und experimentierte mit verschiedenen Einstellungen für den surface-key. Es tat sich nichts.
    Nach einigem Kopfzerbrechen stellte ich bei der Analyse der .map-Dateien fest, dass surface-Tags im Header gar nicht berücksichtigt sind – egal ob bei mapsforge-, kurviger oder openandro-Maps.
    Also erzeugte ich mit dem map-writer meine eigene Kartendatei mit einem erweiterten tagging und siehe da, nun sehe ich auf der Karte auch tatsächlich die vorgesehenen Hervorhebungen für schlechten Belag..
    In der modifizierten tag-mapping.xml stehen etwa diese Zeilen:

    <ways>
    <osm-tag key="surface" value="cobblestone" zoom-appear="14" />
    <osm-tag key="surface" value="gravel" zoom-appear="14" />
    etc.
    <osm-tag key="smoothness" value="bad" zoom-appear="14" />
    <osm-tag key="smoothness" value="very_bad" zoom-appear="14" />
    etc.

    Im Theme nehme ich etwa diesen Abschnitt:

    	<rule e="way" k="highway" v="*" zoom-min="14">
    		<rule e="way" k="surface" v="compacted|unpaved|gravel|raw|cobblestone|paving_stones|sand|pebblestone" >
    			<line stroke="#C0FF8000" stroke-width="1.6" stroke-dasharray="3,3" stroke-linecap="butt"/>
    		</rule>
    		<rule e="way" k="smoothness" v="bad|very_bad|horrible|horrible" zoom-min="14">
    			<line stroke="#C0FF0000" stroke-width="1.6" stroke-dasharray="3,3" stroke-linecap="butt"/>
    		</rule>
    	</rule>

    Ein Ergebnis für ein modifiziertes desertV4 hänge ich an. Die roten/orangenen dasharrays stellen Kopfsteinpflaster, etc., dar. Soll nur ein Beispiel sein.
    Frage: Gibt es irgendeinen Grund, den ich evtl. übersehen habe, warum in den verbreiteten .map-Karten-Downloads die surface-keys nicht integriert sind?

    #31183
    Avatar photoChristianK
    Keymaster

    Hi Sascha,

    Surface ist im TgMapping enthalten:

    
    
    <osm-tag key='surface' value='paved' renderable='false' zoom-appear='8' />
    <osm-tag key='surface' value='asphalt' equivalent-values='concrete' renderable='false' zoom-appear='8' />
    <osm-tag key='surface' value='compacted' equivalent-values='fine_gravel' renderable='false' zoom-appear='8' />
    <osm-tag key='surface' value='smooth_paved' equivalent-values='concrete:plates,concrete:lanes,paving_stones,paving_stones:30,paving_stones:20,bricks,cement,metal,wood' renderable='false' zoom-appear='8' />
    <osm-tag key='surface' value='rough_paved' equivalent-values='unhewn_cobblestone,cobblestone,stone,grass_paver,cobblestone:flattened,sett' renderable='false' zoom-appear='8' />
    <osm-tag key='surface' value='gravel' equivalent-values='pebblestone,woodchips' renderable='false' zoom-appear='8' />
    <osm-tag key='surface' value='raw' equivalent-values='ground,dirt,grass,sand,earth,mud,clay,salt' renderable='false' zoom-appear='8' />
    <osm-tag key='surface' value='winter' equivalent-values='ice,snow' renderable='false' />
    <osm-tag key='surface' value='unpaved' renderable='false' zoom-appear='8' />
    
    

    Hier gibts die Downloads dazu:

    LG, Christian

    #31184
    SaschaT
    Participant

    Ah, ok, danke, dann hatte ich da wohl veraltete map-Dateien rumfahren… Mit einer neuen andromap von Brandenburg funktioniert’s. Allerdings nur mit elevate4. Mein modifiziertes desert4 zeigt wieder nichts an. Liegt wohl am renderable-Attribut für surface im Tag-Mapping, oder wie?

    Wie wäre es mit der Aufnahme von smoothness? Das scheint zumindest hier in Berlin ganz gut eingepflegt zu sein und ist oft eindeutiger, als der Belag.

    Gruß
    Sascha

    #31185
    Avatar photoChristianK
    Keymaster

    Die tags sind mit renderable=false definiert
    Das bedeutet das damit innerhalb zB highway=* verschiedene Rendervarianten möglich sind.
    Also als main_rule highway=

    Schau mal in die Elevate, dann ist alles klar.

    @Tobias
    kann Dir dazu sicher mehr sagen

    LG, Christian

    #31193
    Avatar photoTobias
    Keymaster

    renderable=false: mach einfach ein highway=* drum, dann wird auch der Abschnitt oben angezeigt, zumindest gravel. cobblestone nicht direkt, sondern über das zusammengefasste rough_paved.

    smoothness: haben wir uns damals angeschaut, aber ist leider nicht so brauchbar wie es auf den ersten Blick erscheint, und recht umstritten:
    https://wiki.openstreetmap.org/wiki/Key:smoothness#Controversy
    https://wiki.openstreetmap.org/wiki/Talk:Key:smoothness
    https://wiki.openstreetmap.org/wiki/Talk:Accepted_features/Smoothness#Renaming_current_values
    und viele Diskussionen auf Mailinglisten und Foren
    In Kürze: surface ist einfach zu taggen und verifzierbar, smoothness, gerade mit den gültigen Werten, nicht.
    Dazu kommt noch, das es schwer wird noch einen weiteren Wert darzustellen und wir auch ein 15-tag-limit für Wege haben (an das wir real schon gestoßen sind, siehe dazu andere Threads), deshalb sind wir vorsichtig damit, zusätzliche Tags aufzunehmen, die in erster Linie highway=* betreffen.

    Developer of Elevate mapstyle

    #31203
    SaschaT
    Participant

    Danke für die Erläuterungen und die Links!
    Werde mich weiter umschauen. Bin erst seit seit zwei Monaten mit OSM und drumherum beschäftigt und hab noch nicht so den Überblick. Die Materie ist für Windows-User (und -Entwickler; aber nicht Java 😉 ) nicht gerade übersichtlich und extrem verstreut. Zu renderable etwa habe ich zunächst nichts Erhellendes gefunden, außer das, was als Kommentar im XSD steht.
    Aber immerhin habe ich inzwischen einen Satz von Tools zusammengestellt, mit dem ich eigene Karten erzeugen kann, und für Berlin kann ich da ja selbst tätig werden. Muss jetzt nur noch ein BRouter-Profil anfertigen, das auch smoothness berücksichtigt. 😀

    Danke jedenfalls für eure Arbeit und den Server hier!
    Ist irgendwo eigentlich dokumentiert wie euer Setup, der Workflow für die Erstellung der Karten aussieht, oder ist das Betriebsgeheimnis? Aber das ist jetzt OT…
    Gruß
    Sascha

    #31207
    Avatar photoChristianK
    Keymaster

    Ist irgendwo eigentlich dokumentiert wie euer Setup, der Workflow für die Erstellung der Karten aussieht, oder ist das Betriebsgeheimnis?

    Das ist nicht dokumentiert, möchte ich auch nicht da die Sache einigermaßen komplex ist und ich nicht zu jeden Schritt Support leisten bzw. diskutieren möchte und die Sache auch permanent im Fluss ist.

    LG, Christian

Viewing 7 posts - 1 through 7 (of 7 total)
  • You must be logged in to reply to this topic.