osmandapp / OsmAnd

OsmAnd
https://osmand.net
Other
4.48k stars 996 forks source link

Incorrect rendering of osmc:symbol=no key #20023

Open sfphoton opened 1 month ago

sfphoton commented 1 month ago

Description

Hiking routes' marks are rendered based on the osmc:symbol tag, which has a strict format according to the OSM Wiki. However, there are some trails that are tagged with osmc:symbol=none or osmc:symbol=no, some stretching entire countries, showing that they have no symbol. In this case, no symbol should be rendered - but OsmAnd will render an empty white square.

Steps to reproduce

Turn on hiking route coloring by OSMC in profile settings > Routes > Hiking routes and see any trails tagged with no symbol.

Actual result

OsmAnd will render an empty white square.

Result for a long trail, tagged with osmc:symbol=no

Screenshot 1 Screenshot 2

Result for a short trail, tagged with osmc:symbol=none

Screenshot 1 Screenshot 2

Expected result

OsmAnd should not render any symbol for these relations. However, it should render symbols for other routes that happen to be in the same place.

Your Environment (required)

OsmAnd Version: OsmAnd~ 4.7.10
Android/iOS version: Android 13
Device model: Nokia X10
yuriiurshuliak commented 1 month ago

The bug has been reproduced. To reproduce it,I used a pedestrian profile, opted for the Tourist map style, and activated the display of Hiking routes. Subsequently, I went along the above routes (48.69986, 19.07834), (47.7082, 18.7174).

As a result, you can notice that empty white squares are displayed on these routes, despite no symbols being intended for display.

OsmAnd~ 4.8.0#2460m, released: 2024-06-08

sonora commented 1 month ago

I propose that this is no bug. For once, the empty symbol is necessary in OsmAnd for the route to be clickable. And secondly: Isn't it quite an informative and intuitive way to illustrate that this is an established route but with no symbol?

sfphoton commented 1 month ago

I think this is really a bug. An empty white square is still a symbol, some trails could be marked with that.

I can agree with the "clickable" part, though. However, there are places where an unmarked trail runs in the same path as a marked one, and rendering the empty square is just misleading when we could just render the symbol that is actually there. Clicking that will bring up a menu anyway. See my "long" example.

Maybe a middle ground would be to render something that is trivially not a valid symbol, and maybe only where no other symbol of any marked trail can be rendered?

vshcherb commented 1 month ago

We rely on icons to display route clickable, probably white box is not a good icon and we don't display icons for all routes yet though in our case we need to display in future default icon with Route type i.e. icon with Pedestrian / Cyclist depends on route type and display it for all routes even without symbols