gravitystorm / openstreetmap-carto

A general-purpose OpenStreetMap mapnik style, in CartoCSS
Other
1.53k stars 817 forks source link

Only hide access=private tracks at Z14 when all transport modes are private/no #765

Open SomeoneElseOSM opened 10 years ago

SomeoneElseOSM commented 10 years ago

Originally mentioned on the talk list here:

https://lists.openstreetmap.org/pipermail/talk/2014-July/070261.html

Here's one example where a major regional footpath route is omitted:

http://www.openstreetmap.org/#map=14/53.1731/-1.0334

If you look here (using an OSM basemap) you can see the route "seeming to route across nothing" between non-explicitly-private sections:

http://hiking.waymarkedtrails.org/en/?zoom=14&lat=53.17461&lon=-1.03389&hill=0

Presumably an unintended consequence of

https://github.com/gravitystorm/openstreetmap-carto/pull/747

which according to the comments there seems to have been an attempt to improve the "look" of the map at Z13 and Z14 in two central European cities.

Rovastar commented 10 years ago

This is not a bug this is intended. Private access is less relevant than regular access hence omitted at these zoom level. Hint: you can zoom in. See https://github.com/gravitystorm/openstreetmap-carto/pull/747

RobJN commented 10 years ago

@Rovastar (cc @math1985) It's not that simple I'm afraid. The route in question is correctly tagged as per the guidelines we have in the United Kingdom. As it physically looks like a track it has been mapped as highway=track. The route is a private route so access=private has been added (this closes off access to all traffic types), however it is legally designated as a public footpath (this is a UK specific legal designation that allows access on foot at all times). As such foot=yes and designation=public_footpath have been added. According to the access hierarchy this combination of access=private and foot=yes would mark all transport modes apart from foot as private. Foot is permitted.

In my opinion we should still be showing this route as it is a major walking route in the area. As such the render should only hide ways if they are tagged as access=private with no other transport access tags (foot, vehicle, motor_vehicle, etc..). I'm not sure if this detail makes it in to the rendering rules??

The other solution would be to always show routes tagged with designation={public_footpath,public_bridelway,byway_open_to_all_traffic,restricted_byway}. This would introduce a render rule that applies to the UK only.

p.s. I would change to title of this to "Only hide access=private ways at Z14 when all transport modes are private/no"

matkoniecz commented 10 years ago

So this way performs two functions: a public footway/path and a private track. Currently only highway and access values are considered.

But it is possible to retrieve information that it is a public footway, maybe it can be displayed as one on zoom levels where private tracks are not displayed?

Or maybe consider "guidelines we have in the United Kingdom" as a bad tagging scheme (IMHO [highway=footway; vehicle=private] would be much better as it is easier to parse and conveys the same information).

RobJN commented 10 years ago

Or maybe consider "guidelines we have in the United Kingdom" as a bad tagging scheme (IMHO [highway=footway; vehicle=private] would be much better as it is easier to parse and conveys the same information).

Well we spent a lot of time as a community to agree on the tagging of public footpaths (and other "Public rights of way") and we have settled on the method I described. After all it is a track on the ground (clear wheel tracks with a bit of grass growing between the wheel tracks). Separating the physical from the legal access rights seems the best thing to do here in the UK.

Tagging guidelines: http://wiki.openstreetmap.org/wiki/United_Kingdom_Tagging_Guidelines#Tagging_Access_Provisions http://wiki.openstreetmap.org/wiki/UK_access_provisions

dieterdreist commented 10 years ago

Am 26/lug/2014 um 14:08 schrieb Mateusz Konieczny notifications@github.com:

[highway=footway; vehicle=private] would be much better

you'll probably have to add at least horse=private

matkoniecz commented 9 years ago

@RobJN

After all it is a track on the ground (clear wheel tracks with a bit of grass growing between the wheel tracks).

Note that it is not how highway=track is defined. From http://wiki.openstreetmap.org/wiki/Tag%3Ahighway%3Dtrack

This tag represents roads for mostly agricultural use, forest tracks etc.

It is not about quality of road, some may have better quality, some even worse

SomeoneElseOSM commented 9 years ago

@matkoniecz I suspect any tagging discussion is better carried out on the tagging list :-)

To be clear, the example that I gave at the top of this issue is "mostly for agricultural use", but there is a public right of way across it, and a major regional footpath route runs along that.

matkoniecz commented 9 years ago

In my opinion we should still be showing this route as it is a major walking route in the area. As such the render should only hide ways if they are tagged as access=private with no other transport access tags (foot, vehicle, motor_vehicle, etc..). I'm not sure if this detail makes it in to the rendering rules??

It is possible to check at least foot, bicycle, horse.

There are three possibilities for "highway=track, access=private, foot=yes".

The last two involve a bit of magic and may violate https://github.com/gravitystorm/openstreetmap-carto/blob/master/CARTOGRAPHY.md#data-manipulation

RobJN commented 9 years ago

Displaying as a footway before changing to a track when you zoom in may be very confusing for both mappers and map users alike. I'd settle for option 2, and maybe try 3 just to see how it works in practice.

matkoniecz commented 9 years ago

Displaying as a footway before changing to a track when you zoom in may be very confusing for both mappers and map users alike.

I though also about displaying it like footway across all zoom levels.

matkoniecz commented 6 years ago

After looking at this again I think that displaying such case as footway would not work in this style.

It would leave two solutions

I think that second may be considered, especially as currently private tracks are no longer more prominent than ones without access=no/private.

But it still feels like a significant magic.

Though, given redesigning of access=private, maybe now it is reasonable to show private ways also on lower zoom levels?

RobJN commented 6 years ago

Hi. Struggled a bit to follow. I shall re-write as such:

For a "highway=track, access=private, foot=yes" then you should consider not applying the private access style as the route is not fully private (a major transportation mode is allowed on this route).

pnorman commented 6 years ago

We don't want to use different logic for what is no access for rendering the dashes and for what is no access for choosing to render. We can look at if this combination should be considered no access.

Though, given redesigning of access=private, maybe now it is reasonable to show private ways also on lower zoom levels?

We should re-evaluate this. I don/'t have an opinion one way or the other on if we should change it since I haven't tested what it looks like.

For a "highway=track, access=private, foot=yes" then you should consider not applying the private access style as the route is not fully private (a major transportation mode is allowed on this route).

This would be inconsistent with something like highway=tertiary access=no foot=yes, where we would want to display it with the no access rendering because the main mode of transport for highway=tertiary can't use it.