osmandapp / OsmAnd

OsmAnd
https://osmand.net
Other
4.6k stars 1.01k forks source link

Public transport platforms are ignored if a stop position isn't nearby #13664

Open davidoskky opened 2 years ago

davidoskky commented 2 years ago

Description

I open this issue to continue the discussion on #9672 which was closed. In public transport, platforms which belong to a bus line and do not have a corresponding stop_position are ignored by OsmAnd. The platforms are shown on the map, but are not included in the bus line and are not used for routing in public transport mode.

How to reproduce?

I tested the area provided by @aceman444: relation 5940248 and node 4076650377. Two bus lines go through that node, 1 and 11, the relation above is the one for bus line 1. In OsmAnd bus line 1 is not listed among the ones going through that stop, line 11 is for some reason... Keep in mind OsmAnd live should not matter as I downloaded the map of Slovakia just yesterday. Routing is also broken: selecting a spot nearby and routing via bus gives us two options: using line 11 which correctly stops at said platform, using line 1 instead makes us go to the next bus stop and walk all the way back.

Screenshot ![Screenshot_2022-02-01-02-59-30-388_net osmand plus](https://user-images.githubusercontent.com/13107368/152045004-dd332b3d-8428-4b71-94be-12710da848fe.jpg)

I'll give another example in which this problem is more evident: relation 908954 and the platform 4540215835. In this relation all platforms are present, however several don't have a stop_position. Open OsmAnd select the platform, you can swipe the menu up to select the bus line going through it; the correct line is not shown, the line going in the other direction is shown instead, this may be because there is a stop_position of the route on the other direction nearby. Tap on that line and the full line will be displayed, you can now navigate through the stops tapping previous and next. Next is grayed out even though this is not the first platform in the relation, if you tap previous the app will select another platform which has a stop_position nearby (skipping one in between which doesn't), you can notice that this one is on the other side of the road: the wrong line has been selected by the app, in fact if you tap next it will take you to another platform, not the one originally selected. If you start tapping previous, you'll see the app jumping around the map, not going in order at all and selecting only the platforms which do have a stop_position nearby. You can have fun with routing to see the absurd things you'll have to do to get nearby a platform which doesn't have a stop_position nearby.

Video https://user-images.githubusercontent.com/13107368/152045267-2dd7cd1b-f332-4a12-826c-610554631518.mp4

Your Environment

OsmAnd Version: 4.1.11 (FDroid) Android/iOS version: 11 Device model:

Maps used (online or offline):
Offline, in the first case the map of Slovakia, in the second one the map of Italy, Lombardia

aceman444 commented 2 years ago

yes

davidoskky commented 2 years ago

An update. I'm still using OsmAnd 4.1.11

The second example I gave now works flawlessly, even though OSM data hasn't been changed. The first example, the one provided by @aceman444, still produces the problem outlined above.