abrensch / brouter

configurable OSM offline router with elevation awareness, Java + Android
MIT License
476 stars 115 forks source link

Avoid starting routes on ferry-ways #600

Open PartTimeDataScientist opened 12 months ago

PartTimeDataScientist commented 12 months ago

If a route request is started off a routable track the routing algorithm seems to try to use the next point with bicycle=yes. That doesn't make too much sense if that point is in the middle of a ferry-way: image

Example is here: https://brouter.de/brouter-web/#map=16/51.1081/7.8883/osm-mapnik-german_style,Waymarked_Trails-Cycling&lonlats=7.885628,51.100827;7.878391,51.114132

quaelnix commented 11 months ago

If you uncheck the "allow_ferries" profile option, the issue is gone.

That doesn't make too much sense if that point is in the middle of a ferry-way

I agree with this in principle, but how should we solve the dilemma that starting a route on a ferry is mostly undesirable, but still valid?

PartTimeDataScientist commented 11 months ago

If I disallow ferries this setting will be used for the complete route calculation which might be undesired.

I don't know how the algorithm determines the starting point but my proposal would be to look for bicycle=yes and ferry=no only for starting the route.

Anyway, this is arguably an edge case but I wanted to document it nonetheless...

quaelnix commented 11 months ago

I don't know how the algorithm determines the starting point

Afaik it simply picks the nearest point that lies on a way with costfactor < 9999.