cyclosm / cyclosm-cartocss-style

Cycle oriented CartoCSS style.
https://www.cyclosm.org
Other
240 stars 45 forks source link

Differentiate compulsory and optional cycleways in Germany #651

Open joshinils opened 1 year ago

joshinils commented 1 year ago

A Germany-specific problem is that we have optional and compulsory cycleways.

The only difference is a legally binding sign being present.

one of:

Which makes a cyclable way compulsory. If there is a parallel road to it that leads to the same destination you have to use it (weather and quality permitting, i.e. ice, snow, excessive leaves or damage makes it optional again)

Any cycleway (optional or compulsory) is tagged with bicycle=designated, so by that tag they can not be differentiated. None of the above would have a bicycle=yes, which is only for ways where cycling is allowed, but not designated. For example, accompanying a traffic_sign=DE:239,1022-10 and an implied maxspeded:bicycle=walk

If there is a traffic_sign=none, then the cycleway is optional.

example optional cycleway: https://osm.org/way/937881852 example compulsory cycleway: https://osm.org/way/333632597

When there is a centerline for the road parallel to a compulsory cycleway the road needs a bicycle=use_sidepath, which is the only possibility to tag that the cycleway is compulsory other than the traffic_sign on the cycleway itself. For non-compulsory i.e. optional cycleways the centerline can be tagged with bicycle=optional_sidepath, but that is controversial whether that tagging is redundant.

To my understanding an optional cycleway is neither to be colored green or blue, but logically in-between. The same goes for a road's centerline, it is neither normal nor gray but logically in-between.

Whether that is possible or how to do that is a question I am asking.

kaneap commented 1 year ago

For what it's worth, bicycle=use_sidepath is rendered (the same as bicycle=no) but this only works when the cycleway is mapped separately from the road. (Perhaps something like carriageway:bicycle=use_sidepath is a potential solution that could be rendered for cycleways as tags on the road, but so far I've seen no suggestion from the community for this sort of tagging)

As for rendering the cycleways themselves in a different color, I see at least a few challenges:

joshinils commented 1 year ago
* There is no real established tagging that the cycleway itself is mandatory, and would have to be inferred from the traffic signs, which themselves can be difficult to parse given the variety of different combinations of signs, and different signs from different countries.

I know, I also don't like the lack of a scheme, but since only one country suffers from that there is no one else pushing for one.

There have been discussions on community.osm.org in german about the mandtory / optional distinction. Most of which resulted in only tagging the traffic sign, which sometimes is the only distinction one can make, when everything else is exactly the same (width, surface, smoothness, segregated, etc.).

Previously I was using a Berlin-specific convention (which I no longer use, because Streetcomplete does not care, and the wiki is clear about bicycle=designated) which was to use bicycle=yes when there is no sign making a cycleway compulsory.

In my mind should optional cycleways always be green and never blue.

Florimondable commented 1 year ago

Mandatory cycleway does exist in France and in other countries it seems (square board = optional, round board = mandatory)

bicycle=use_sidepath should be used in this case. Though I agree a tag on the cycleway would be more helpfull.

If you know a street with : cycleway=track bicycle=use_sidepath that’s bad if we believe the wiki V «Please do not use bicycle=use_sidepath in combination with cycleway=track or cycleway=lane on the main highway, if there is no separate cycleway drawn on the map.»

kaneap commented 1 year ago

The mandatory/optional distinction also exists in the Netherlands. The biggest difference is that light mopeds are allowed on mandatory cycle paths (mofa=designated)

brainwad commented 1 year ago

In Switzerland we tag "optional" cycleways as highway=path bicycle=yes, which Cyclosm renders as a green line instead of a blue one. This aligns with the wiki, which says "Typically bicycle=designated (or highway=cycleway) requires special-purpose traffic signs.", as our "optional cycleways" either have no signs, or have a pedestrian blue sign with a white under-shield allowing bikes, or have a generic "no motor vehicles" prohibition sign.