Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drop rendering for highway=unclassified and highway=residential areas #3995

Closed
matkoniecz opened this issue Dec 29, 2019 · 21 comments · Fixed by #4096
Closed

Drop rendering for highway=unclassified and highway=residential areas #3995

matkoniecz opened this issue Dec 29, 2019 · 21 comments · Fixed by #4096

Comments

@matkoniecz
Copy link
Contributor

Expected behavior

highway=unclassified + area=yes is not rendered

Actual behavior

highway=unclassified + area=yes is rendered as an area

Links and screenshots illustrating the problem

Based on #3985 research it appears that there are nearly no (or maybe not even a single one) highway=unclassified + area=yes that is mapped correctly.

@matkoniecz matkoniecz changed the title Deep rendering for highway=unclassified areas Drop rendering for highway=unclassified areas Dec 29, 2019
@jeisenbe
Copy link
Collaborator

This would be an easy fix for a new contributor.

@lgiard
Copy link

lgiard commented Jan 16, 2020

Shouldn't the same thing be done for highway=residential too ? I see a few contributor abusing of highway=residential + area=yes because it is rendered, but it is screwing routing at many intersection (vehicle are routed along the outside of these area...).

I'm sorry if it was discussed earlier, i didn't find a decision about the other highway type.

@matkoniecz
Copy link
Contributor Author

Probably.

Is there case where highway=residential + area=yes is a valid tagging? I made such check for unclassified, and it seemed clear that every single checked object was invalid.

https://overpass-turbo.eu/s/PP3 can be helpful in such reserach (navigate to an area, click "run" button) (overpass turbo interface is broken on mobile devices, you need to be on PC)

@lgiard
Copy link

lgiard commented Jan 17, 2020

From what i saw in Belgium : all the highway=residential + area=yes should either be area:highway=residential/... (example at a crossroad) or wrongly tagged (like a parking "square" in the center of a village that's clearly not a road as it is separated by kerb...). Some of them are also wrongly mapped, but that's probably due to their age (some were mapped 7-8 years ago). Normally residential road are always linear infrastructure, they can have turning circle or a widening for car parking near your house, but it is still linear logically. I don't see any example that should be an area and still be residential road. It is pretty similar to unclassified in my opinion.
And there is the problem that many routing algorithm will often fail with this as they will announce non-existing turn (to follow the area border).
From discussing with one mapper that use this tag, he said to me that he use it because it is nicely rendered for crossroad, etc... So that's a problem in my opinion. He should use area:highway=* in that case even if not rendered (yet).

Examples where routing have problems :

@polarbearing
Copy link
Contributor

I can imagine a residential road ending in a place larger than a turning circle, leading into several properties. Thus you'd have some omni-directionality as required for valid area=yes.

@jeisenbe
Copy link
Collaborator

jeisenbe commented Jan 17, 2020 via email

@polarbearing
Copy link
Contributor

@lgiard
Copy link

lgiard commented Jan 17, 2020

What would be the advantage in comparaison to a simple "turning circle" or a line ending there ? You can logically connect every footway to the end node if it is only a line and it represent it more or less the same thing. And this area should be mapped as area:highway=* if we follow the wiki general rules about highway, as it is a widening of the road to allow parking but still logically only the end of the road as a "node" (if we just thing of road graph - it doesn't matter if it should end 5 meters away no ?). There are so many bad usage promoted by the current rendering, that i find it is always bad use maybe. :p

@polarbearing
Copy link
Contributor

No you cannot add footways since there are no footways in reality. The asphalted area is adjacent to the plots of the terraced houses.
No is is not just a widening to allow parking.
Let's analyse this case:
If that were in Germany, they would add the blue rectangular sign for 'living street' to tell drivers they have to carefully drive around children playing hopscotch. Now, this is in Ireland, they did not put up that sign, but drivers drive carefully around children playing hopscotch.
Residential roads are not only used by cars.
All OSM-highways with slower traffic (service, pedestrian, footway, living street, residential) can have areas for which area=yes is valid, indicating omnidirectional traffic, that are not just widenings of a linear structure (for which we agree that area:highway=* applies).

@jeisenbe
Copy link
Collaborator

Aerial imagery:

Screen-Shot-cul-de-sac

So there is parking on every side of this area, though perhaps the parking spaces belong to each townhouse rather than being considered a large parking lot? I see there is a car double-parked out in the main roadway area too, which is only twice as wide as the access road.

The enlarged area is about the usual width for a suburban American residential street - 20m with sidewalks. If this were circular it would look like a suburban "turning circle", so I could also see using that tag instead.

While this example may not be incorrectly tagged, I think the current rendering as a white square and dark casing is rather misleading.

Since we otherwise render highway=unclassified and highway=residential identically, I would support removing the area=yes rendering for both at the same time. While the mapping may not always be wrong, the current rendering is not helpful and much of the data is poor quality.

@matkoniecz matkoniecz changed the title Drop rendering for highway=unclassified areas Drop rendering for highway=unclassified and highway=residential areas Jan 18, 2020
@polarbearing
Copy link
Contributor

the parking spaces belong to each townhouse rather than being considered a large parking lot?

Yes, it's individual front yards, with small walls separating them.

@polarbearing
Copy link
Contributor

If the example is too small for you, have a look at objects tagged as square.
overpass highway=residential and area=yes and place=square global.

Procedure-wise, what I don't understand why, once a topic is agreed, we add another topic that is controversial, and blocks the first one.

@lgiard
Copy link

lgiard commented Jan 18, 2020

Sorry at first i didn't see that as controversial. ^^' As the area=yes tagging was never approved by the community except for pedestrian apparently. It is not described on the wiki, nor discussed anywhere as far as i know, and most example that i saw are pure "mapping for renderer" that would generally be better without this area mapping for routing, ... (especially as most of them are duplicate tagging : both area AND line are on this place). If that's only for rendering and mapping that the highway extent over an area, the tag 'area:highway=' is there for this purpose no ? ^^' The highway= tag is only a "logical" tagging of a road (via an abstraction on a line), not an exact mapping.

Is there a place=square which is really a complete residential road ? I didn't find an example. But then if that's the case why not only render this area=yes if there is "place=square" too (i don't know if that's easy or possible ?!) ? It would avoid any mapping for the renderer that's apparently the main reason to use this tag at the moment.

@1ec5
Copy link

1ec5 commented May 18, 2020

For what it’s worth, this roadway in Cincinnati has been tagged as a residential highway area for quite some time. The protrusion has its own name and is only used for one direction of traffic, except when entering or exiting one of the adjacent properties. There are other cases where a residential highway area was used to clarify that there’s a big area of pavement where cars can go pretty much wherever, but the most likely paths have been mapped as non-area ways. It’s entirely possible that these cases deserve area:highway mapping, but I’d imagine that there are other examples like them that have been tagged similarly over the years.

@matkoniecz
Copy link
Contributor Author

matkoniecz commented May 18, 2020

big area of pavement where cars can go pretty much wherever

In this case such tagging is correct, but cases where it actually happens is heavily outnumbered by tagging for a renderer (at least as far as I know).

The claim is not "highway=residential + area=yes is never correct", the main claim is that rendering it has more negative effects than positive.

@jdhoek
Copy link
Contributor

jdhoek commented May 19, 2020

I am saddened by the recent trend of removing rendering of any feature that is being used wrong by mappers without providing any alternative for those who use them correctly. There are valid use cases for having low-level roads like residential, unclassified, service, and pedestrian render as areas when they can, may, and are used to cross in unbounded directions.

Screenshot from 2020-05-19 08-49-48

In this example four residential streets meet in a square without any markings. The middle of this is mapped as an area, but the rendering is now dropped, despite it being correct there. Traffic can cross in nearly any direction there, there is no obstruction or sign in the middle of the square.

Visually rendering this as a single area also helps users of the map orient themselves.

@HolgerJeromin
Copy link
Contributor

This is the place from the comment above:
image

@Zverik
Copy link
Contributor

Zverik commented Jun 16, 2020

removing rendering of any feature that is being used wrong by mappers without providing any alternative for those who use them correctly

https://wiki.openstreetmap.org/wiki/Key:area:highway

@jdhoek
Copy link
Contributor

jdhoek commented Jun 16, 2020

removing rendering of any feature that is being used wrong by mappers without providing any alternative for those who use them correctly

https://wiki.openstreetmap.org/wiki/Key:area:highway

I understand pointing out area:highway, but that is a different beast entirely. area:highway is for mapping the whole area of a way, but it is not expected to be fully routable.

highway=* with area=yes on the other hand is explicitly routable, and makes no claims about mapping the whole of the way area per se. In the example I posted the area mapped thus is routable. If I were to map area:highway as well it would be larger and touch the landuse=residential areas around that square.

In many countries anything above highway=tertiary won't have such freely unmarked routable areas (although it's possible I suppose), but I think that residential and unclassified at least should be rendered if pedestrian and service are.

@Zverik
Copy link
Contributor

Zverik commented Jun 16, 2020

I understand that area=yes with a highway marks a freely routable area. Of course nothing forbids you from mapping such area — it's just it won't be visible on this specific rendering style.

To me, a concept of a freely routable area for cars seems weird. While it's okay for pedestrians to go where they please, cyclists and cars virtually always drive along implicit or explicit "navigation lines". The latter are marked as lanes, while the former usually restricted by surface geometry and destinations.

For example, in both aerial images above, cars are supposed to keep to areas' edges. It would look out of place for a car to cross a square diagonally. Technically possible, of course, but it won't be something you'd expect to see in your plotted route.

The map is not an accurate representation of a territory. When we see a wide sidewalk, we draw a line. When we see a high building, we draw a flat rectangle. Map is about finding rules, connections and relations between objects, to explain and to help navigate the world. Mapping roads as areas does not help with that goal. Presenting roads as areas turns a map into a satellite imagery knock-off.

@jdhoek
Copy link
Contributor

jdhoek commented Jun 16, 2020

it's just it won't be visible on this specific rendering style.

Then why render highway=service? It gets abused just as highway=residential does.

For example, in both aerial images above, cars are supposed to keep to areas' edges.

I'm sorry, but you are mistaken there. It is valid and legal for a car to move diagonally from the north-east to the south-west (or north-west to south-east), or to use the space to turn around, as long as other traffic isn't impeded. And people do. This is an unmarked square. There are plenty of areas where there are only rigid lanes to route along, this isn't one of them.

Technically possible, of course, but it won't be something you'd expect to see in your plotted route.

It would be exactly what I would expect from advanced navigation software.

Presenting roads as areas turns a map into a satellite imagery knock-off.

While I am a supporter of area:highway, this issue is not about rendering the area of ways, but about rendering the freely routable areas, and being consistent with highway=pedestrian and highway=service. This is within the scope of the general purpose OSM-Carto.

It also adds valuable information to users of the map in terms of orientation points; it literally helps explain the world.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
8 participants