Boundary wird teilweise als Fluß angezeigt

Hi,

in Karten, erzeugt mit neueren mkgmap-Versionen (1707 u. 1708), werden in QLandkarte GT einige Boundaries als Fluß angezeigt.

Ursache könnte IMHO sein, daß die im Fluß verlaufende Boundary auch den Tag ‘waterway’ hat. Der Fluß selbst ist getrennt gemappt.

Beispiel: N50° 10.309 E007° 39.949

<?xml version="1.0"?>

Es kommt manchmal vor, dass eine Grenze mit einer Fluss- oder
Straßenmitte identisch ist.
Das wird dann in OSM entsprechend an einem Weg eingetragen.

Für die Behandlung solcher Situationen muss man für die Kombination
boundary-waterway, boundary-highway oder highway=* + railway=tram
entsprechende Regeln erstellen. Ohne diese zusätzlichen Regeln hängt es
vom internen Ablauf von mkgmap ab, welche Darstellung gewinnt.

Der Fluss ist durch den Verlauf der Linie mit waterway=river definiert.
Durch waterway=riverbank kann man die Ufer und damit auch die
Breite / Wasserfläche beschreiben.

PS: Statt der Koordinaten wäre ein Permalink auf den entsprechenden
Bereich in der OSM-Karte leichter nachzuvollziehen.

Edbert (EvanE)

Für meine Karte habe ich keine Regeln für boundary in den mkgmap Styles (denke das ist damit gemeint) erstellt. Habe es eben mit einer älteren mkgmap-Version (1625) probiert. Alles i.O. Liegt dann wohl an mkgmap?

Weshalb ist dann der Fluß nochmals getagt?

Der Fluss, genauer sein Verlauf ist nur einmal als OSM-Weg eingetragen
(waterway=river). Das andere ist die Wasserfläche, die durch den Fluss
gebildet wird. Dafür wird die Wasserfläche als beidseitige Uferlinie
eingetragen (waterway=riverbank).

Das verhält sich ähnlich wie mit Straßen (linearer Weg) und Straßen-
flächen. Das wird auch getrennt eingetragen und getaggt.

Zum Unterschied Fluss und Wasserfläache des Flusses siehe
http://wiki.openstreetmap.org/wiki/DE:Tag:waterway%3Driverbank

Dort steht unter anderem:
*Zusätzlich sollte ein Way mit waterway=river (Way 4 im Beispiel unten) in
Richtung des Wasserflusses gezeichnet werden (z.B. von der Quelle in die See). *

HTH
Edbert (EvanE)

Wäre ja schön, wenn das Konsens wäre. Wenn du versuchst, eine Wanderwegsroute quer über die Kölner Domplatte zu zeichnen, wirst du dafür gesteinigt :frowning:

Gruß,
ajoessen

Jetzt versteh ich gar nichts mehr.

waterway=river gibts doch zweimal. Einmal solo und einmal zusammen mit boundary.

Moin,

ja, solche entscheidenden Informationen werden gerne überlesen …
edit: waterway(river) und boundary sind hier getrennt erfasst.

Deshalb ist der waterway=river wie auch der name=Rhein an diesem kurzen Stück boundary überflüssig, also habe ich beide gelöscht.

Gruß
Georg

PS:
Mit Permalink schauen sich die Leute die Situation anscheinend eher mal in Potlach an, als wenn sie die ID aus dem Post mit JOSM herunterladen müssen …

Tut mir leid, das hat sich mir aus deinen bisherigen Beiträgen
so nicht erschlossen. Wir haben dadurch an einander vorbei
geredet. Mangels Permalink konnte ich die konkrete Situation
leider nicht selber erforschen.

Wenn der Fluss und die Grenze zwei getrennte Wege mit
gegebenfalls identischen Knoten sind, dann ist ein zweites
waterway=river an der Grenze überflüssig/falsch.

Also weg damit, wie es GeorgFausB bereits gemacht hat.

Edbert (EvanE)

Hallo ajoessen

Bei Straßen (lineare Struktur) ist das weitgehend Konsens.
Bei Plätzen leider nicht.
Für Routenrelationen sind Flächen natürlich ein Problem.

Bei deinem Beispiel führt das Fehlen direkter Wege über die
Domplatte leider dazu, dass beim Fußgänger-Routing die
Domplatte manchmal ignoriert wird, obwohl sie die kürzere /
angenehmere (ohne Autos) Verbindung bietet.

Hintergrund ist, dass Routingalgorithmen oft nur über die
Kanten eines Platzes routen, sprich nicht in der Lage sind
den meist kürzeren Weg quer über eine Fläche zu nehmen.

Edbert (EvanE)

Danke an beide. Da waren noch einige zu bereinigen.

Den beschriebenen Fehler (Pseudoflüsse) habe ich auch noch an anderen Stellen (z.B. Mosel) festgestellt, wo kein doppelter Tag vorhanden ist. Fehler muß also an mkgmap liegen. Habe dies mal auf der mkgmap-Mailingliste kundgetan.

Gruß

Hallo Radeln

Wenn zwei Wege wie in deinem Beispiel einmal mit
waterway=river und einmal mit boundary=administrative
übereinanderliegen, kommt es auf die Reihenfolge der
Renderregeln an, welche Darstellung letzlich gewinnt.

Die Reihenfolge kann durch die Standard-Regeln von
mkgmap oder durch deine Änderungen daran definiert
sein. Es kann ohne weiteres sein, dass sich die Standard-
Regeln von einer Version zur nächsten geändert haben
und damit ein anderes, eventuell nicht erwartetes /
bedachtes Ergebnis liefern.

Dieses Verhalten auf der mkgmap-Mailingliste zur Sprache
zu bringen ist sicher der richtige Weg, die Situation zu klären.

Edbert (EvanE)

Hier einen Ausug aus einer Antwort der MAilingliste:

From your screenshot I can now guess, what you mean: There are also other ways
in the map, which are dislpayed as river, although they are only tagged as
boundary AND NOT as river at the same time?

If this is the case, I would guess, that the complete boundary is made up out of
a multipolygon.

In this case the multipolygon tagging seems to be faulty. Either all outer ways
must be tagged the same (this can not be, since one part is tagged as a river,
while other parts shouldn’t be rivers), or the tag values for the multipolygon
must be placed on the relation instead of the outer ways (this is also not done
in the example, since the boundary tag is on the way and not on the relation).

Dies sagt mir als Einsteiger recht wenig. Habe aber trotzdem zwei Boundaries verglichen, wovon eine als river angezeigt wird:

http://www.openstreetmap.org/?lat=50.2292&lon=7.4422&zoom=15

Boundary (way_54643302) südlich Brodenbach → river
Boundary (way_54643298) nördlich Brodenbach → kein river

Das Tagging in den zugehörigen Relationen scheint gleich zu sein, oder?

Moin,

Das ist hier der Fall beim Weg 54643302 südlich Brodenbach.
Merkwürdigerweise ist das aber beim Weg 54643298 nördlich Brodenbach nicht der Fall,
obwohl für ihn die gleichen Rand-Bedingungen gelten (s. u.).

Auch das ist hier der Fall - in beiden Fällen.

Aussage:
Entweder müssen alle Außen-Wege eines Boundary-Polygons gleich getaggt sein - geht hier nicht, da die Land-Grenzen nicht den Tag waterway=river bekommen können, sie sollen ja gerade nicht als river erscheinen.
Oder der Boundary-Tag darf nur in der Relation stehen, aber nicht auf den Außenwegen der Relation.

In meinen Augen hat mkgmap resp. der Entwickler hier die Bedingungen falsch ausgelegt:
Die Bedingung, das alle Außen-Wege absolut identisch getaggt sein müssen, gilt nur, wenn die Relation selbst keine Tags hat!
Die Relation hat Tags - also sollen bei ihrem Rendern die Tags der Wege ignoriert werden!
Stattdessen rendern sie -manchmal- alle Einzel-Tags der Outer-Ways an alle alle Outer-Ways.
Das ist hier definitiv falsch!

Ja - und kann so bleiben.

Gruß
Georg

Moin,
in V1694 gab es einen größeren Umbau bzgl. Multipolygonhandling:

Chris

Wenn die Relation selber aber bereits als boundary gekennzeichnet ist, dann hat an den outer-ways das boundary Tag nichts mehr zu suchen. Gerade durch so unsauberes Tagging wird es fuer ein Programm halt schwer zu erkennen, was eigentlich gemeint ist.

Da ist mkgmap z.Z. sicherlich noch nicht ganz sauber (ein bekanntes Problem) trotzdem sollte man bei der Relation mal aufraeumen, damit man besser erkennen kann, womit genau mkgmap nicht zurecht kommt.

PS: Man kann fuer die Grenze und den Fluss auch zwei eigene Ways benutzen, die entlang der selben Nodes verlaufen. Ob ein gemeinsamer Way oder zwei getrennte Ways geschickter sind, da gehen OSM-typisch mal wieder die Meinungen auseinander.

Hier nochmals die gefundenen Boundaries, damit mit dem Aufräumen begonnen werden kann. Würde es ja selbst tun. Dafür fehlen mir aber die Kenntnisse bzw. eine genaue Anleitung.

http://www.openstreetmap.org/?lat=50.2509&lon=7.4284&zoom=12
→ Relation Gemeinde Hatzenport rel_546634
→ Relation Gemeinde Löf rel_546642
→ Relation Gemeinde Lehmen rel_546640

Neu:
http://www.openstreetmap.org/?lat=50.7548&lon=7.3343&zoom=12
→ Relation Hennef (Sieg) rel_36042

Nur so nebenbei:
Man kann solche Relationen auch direkt als Link angeben:
http://www.openstreetmap.org/browse/relation/546634

Das funktioniert genauso auch fuer Ways (z.B. http://www.openstreetmap.org/browse/way/54643350)) und Nodes (z.B. http://www.openstreetmap.org/browse/node/323461583)).

Da kann man dann sich auch gleich zu den Relationen bzw. zu den Mitgliedern durchklicken, und man kann sich auch die Vergangenheit des Elementes angucken.

Gruss
Torsten

Aufgrund von de_muur’s Posting habe ich die Links mal quer gecheckt und festgestellt, daß diese nur in Merkaartor funktionieren. Bin stillschweigend davon ausgegangen, daß sie in JOSM, nutze ich so gut wie nie, ebenfalls funktionieren.

Sorry
Josef

Man lernt halt nie aus.
Wo kann man so was nachlesen? Habe im OSM-Wiki auf die Schnelle mal nach ‘Browse’ gesucht und nichts in der Richtung gefunden.

Danke
Josef

Problem ist in mkgmap-r1712 behoben.

Gruß
Josef