osmandapp / OsmAnd

OsmAnd
https://osmand.net
Other
4.68k stars 1.02k forks source link

Pedestrian crosswalks don't get notified unless they have crossing=uncontrolled tag #2141

Closed vlotorev closed 8 years ago

vlotorev commented 8 years ago

osmand can warn about speed cameras, pedestrian crosswalks, etc. I noticed that it notifies only about pedestrian crosswalks with explicit tag "crossing=uncontrolled" (plus of course "highway=crossing"). In case there is no tag "crossing=uncontrolled" (and "highway=crossing" is the only tag on point) then osmand doesn't notify.

IMHO, all "highway=crossing" should be considered uncontrolled and get notified by application. There might be logic in not notifying about crosswalks with explicit "crossing=traffic_lights" and notifying about coming traffic lights instead. osmand 2.2.4 version

sonora commented 8 years ago

Yes, probably makes sense. I have changed this for testing such that the alarm is now triggered for all highway=crossing except those further specified with crossing=traffic_signals.

Let's see if there are any issues. OSM wiki says there is also crossing=no possible, but I am not sure if in combination with highway=crossing. If yes, we may have to exclude this and/or more values.

sonora commented 8 years ago

I have backed out my test fix for now because I just notice it may not be so easy in that code portion to check for co-existence of highway=crossing and crossing=* without perhaps creating duplicate alarms each, maybe someone can have a look.

vshcherb commented 8 years ago

The fix could be done on data preparation step in the routing section by adding uncontrolled. So the value is not really clear, there are quite a lot pedestrian crosswalks, that I had to disable that feature for myself. I'm afraid highway=crossing will only multiply the number of alarms in some countries.

sonora commented 8 years ago

I think the proper condition to trigger the ped crossing alarm could be as follows:

And yes, I agree with Victor: Even as we have it now already, you have to disable the alarm in many regions, or else you get way too many alerts, all the time ...