streetcomplete / StreetComplete

Easy to use OpenStreetMap editor for Android
https://streetcomplete.app
GNU General Public License v3.0
3.89k stars 356 forks source link

Add bicycle= and foot= to crossings with traffic signals #2767

Closed DerDings closed 3 years ago

DerDings commented 3 years ago

General

Affected tag(s) to be modified/added: bicycle Question asked: Whom is this crossing dedicated to?

Checklist

Checklist for quest suggestions (see guidelines):

Ideas for implementation

Element selection:

        nodes with
          (
            crossing = traffic_signals and (!bicycle or !foot)
          )

only if they are part of at least one way

        ways with
          (
            highway and cycleway = track
            or highway and bicycle = designated
        or highway ~ path|footway and bicycle = yes
       )

Metadata needed: Which countries use the pedesrian / bicycle / pedestrian+bicycle traffic signals? Maybe have a look at the osm wiki and Wikipedia.

Proposed GUI: A hint "look at both sides of the crossing" Three answers with a photo each, like the crossing type quest shows them

pedestrians only in each direction cyclists only in each direction both pedestrians and cyclists
image image image
-> tag bicycle=no foot=yes -> tag bicycle=yes foot=no -> tag bicycle=yes foot=yes

"gone forever" should not be offered, since the crossing may have only been degraded to an unmarked one. It's better to leave a note in this case.

Yet to discuss

westnordost commented 3 years ago

I'd say, shouldn't who a crossing is dedicated to not be inferred from the way of which the highway=crossing is a vertex of?

matkoniecz commented 3 years ago

And in cases where it is not (some "brilliant" cycleway design), I would expect it to be tagged already.

DerDings commented 3 years ago

I'd say, shouldn't who a crossing is dedicated to not be inferred from the way of which the highway=crossing is a vertex of?

I forgot to add sidewalk:side:bicycle=yes to the filter. When sidewalks or footways are enabled for cyclists, that doesn't always cover the crossings. Also, roads with a cycleway=track may have crossings which are enabled for cyclists in order to do turns, but they may also have crossings which are only made to allow pedestrians cross the carriageway.

peternewman commented 3 years ago
* what about `horse`? Is there a country with dedicated horse pictograms on traffic signals? This would blow up the quest to have 3ร—3-1=**8** answers instead of only 3 in those countries.

Of course: https://en.wikipedia.org/wiki/Pegasus_crossing

From memory some are one combined crossing, and some are a pair of adjacent horse and foot+bike crossings with fencing between them.

* what about those countries using text instead of graphics on traffic signals: Are there differences in the texts that would make this quest possible there too?

Not so much text, but London also has some other symbols in use: https://www.independent.co.uk/news/uk/london-pride-gay-and-trans-symbols-replace-little-green-man-on-traffic-lights-a7091541.html

andrewharvey commented 3 years ago

I would say this should be foot/bicycle=designated rather than simply =yes, because designated says it's marked/signposted for that mode. Though maybe we can't expect users to distinguish between, legally can use and signposted for.

Also would the lack of signage be =no? It could still be legally and physically accessible by bicycles, just not signposted (which would be bicycle=yes rather than bicycle=designated). For this reason I don't think we can safely say bicycle=no just because of a lack of signage.

DerDings commented 3 years ago

I would say this should be foot/bicycle=designated rather than simply =yes, because designated says it's marked/signposted for that mode. Though maybe we can't expect users to distinguish between, legally can use and signposted for.

bicycle=yes is documented on the wiki. According to taginfo, bicycle=yes is used ten times as much as bicycle=designated in combination with crossing=traffic_signals.

Also would the lack of signage be =no? It could still be legally and physically accessible by bicycles, just not signposted (which would be bicycle=yes rather than bicycle=designated). For this reason I don't think we can safely say bicycle=no just because of a lack of signage.

This is why I want to limit it to crossings with traffic lights in countries which use symbols. Those symbols show what is allowed and what is not. bicycle=no means you can still dismount and push your bike as long as it is not foot=no at the same time. as described on tag:bicycle=dismount

I'd say, shouldn't who a crossing is dedicated to not be inferred from the way of which the highway=crossing is a vertex of?

I had a look at some crossings in my area. You're right, this information is probably not as important for routing as I initially thought. But bicycle=yes crossings are shown on Cyclosm and on Thunderforests bicycle map, so at least for manually planning trips it is useful.

But there is a major problem I found: https://wiki.openstreetmap.org/wiki/Key:crossing#Support says:

"A no value for an access tag like bicycle= or horse= on a highway=crossing node is meant to apply only to traffic on the crossing, not on the main road: (highway=crossing + bicycle=no) means that cyclists must dismount before crossing the road; it does not mean that cyclists on road must do this."

Also https://wiki.openstreetmap.org/wiki/Tag:highway%3Dcrossing#How_to_map also suggests both bicycle values yes and no. So I didn't see a problem here.

But now I found that https://wiki.openstreetmap.org/wiki/Tag%3Acrossing%3Dtraffic_signals#Tags_to_use_in_combination says:

"Do not use bicycle=no, because it blocks the road for bicycles."

Seems there is no full consensus how to tag crossings at the moment, and SC as an editor shouldn't push one of the concepts. So maybe just close this issue?

matkoniecz commented 3 years ago

But now I found that https://wiki.openstreetmap.org/wiki/Tag%3Acrossing%3Dtraffic_signals#Tags_to_use_in_combination says:

I removed this as it is incorrect (bicycle=no on highway=crossing is not applying to bicycles traveling on the road though note https://wiki.openstreetmap.org/wiki/Talk:Tag:highway%3Dcrossing#highway.3Dcrossing_with_bicycle.3Dno where there was also opposing view)

andrewharvey commented 3 years ago

bicycle=yes is documented on the wiki. According to taginfo, bicycle=yes is used ten times as much as bicycle=designated in combination with crossing=traffic_signals.

Are you referring to the section which says "bicycle=yes/no - to tag whether the crossing is also a cycleway crossing used by bicycles.", that's fine it's just saying yes where the crossing is used by bicycles, but there is a small distinction between a crossing used/usable by bicycles and designated for bicycles. Yes SC could just opt for bicycle=yes and leave it to future mapping to improve it to bicycle=designated where appropriate, or it could ask in a way that could directly set bicycle=designated.

This is why I want to limit it to crossings with traffic lights in countries which use symbols. Those symbols show what is allowed and what is not.

Only countries where those symbols represent what's allowed and lack of symbols indicating what's not allowed.

DerDings commented 3 years ago

Only countries where those symbols represent what's allowed and lack of symbols indicating what's not allowed.

I can't imagine there are many countries adding symbols to their traffic lights without meaning.

But if there are, maybe any tagging of =no could be left out. The downside is, that the filter would need to be reduced to crossing = traffic_signals and !bicycle and !foot, so crossings with incomplete tagging would be excluded. In my experience, many changeset comments are stuff like "mapping bicycle infrastructure" or "details of hiking route xy". Many mappers focus on one kind of traffic, so one cannot assume that only foot=yes being tagged implies that the mapper checked whether it is also for cyclists.

westnordost commented 3 years ago

Well, I will close this one. See my first comment https://github.com/streetcomplete/StreetComplete/issues/2767#issuecomment-822597395

If a way with bicycle=yes crosses a road and there is a highway=crossing at that vertex, then it should be clear that this crossing is for bicycles too. The same for pedestrians.

I know about the legal situation in Germany that traffic lights that have not been retrofitted to show a bike like this

strictly speaking do not apply for bicyclists. What this then means, like, if the bicyclists may then completely ignore the traffic light, or if they cannot use it (must dismount) depends on the intricacies of the detailed on-site situation and understanding of the law of the local court. In any way, this is the kind of bean counting that should really not be recorded with StreetComplete.

matkoniecz commented 3 years ago

highway=crossing at that vertex, then it should be clear that this crossing is for bicycles too. The same for pedestrians.

And if there is exception, then it can be expected to be tagged by whoever originally has drawn that way or placed highway=crossing.

As such weird cases are really rare, it is not useful to hunt for them with StreetComplete.