gravitystorm / openstreetmap-carto

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

`barrier=fence` renders too heavy at zoom level 16, 17 #4428

Open PeterLeGras opened 3 years ago

PeterLeGras commented 3 years ago

The line weight of barrier=fence is too heavy at zoom level 16. The stroke width is only 1px but it is black. I believe the line stroke colour should change to a lighter grey colour, otherwise it visually competes with building outlines. A similar change should also be considered at zoom level 17.

Example: Notice how the following way is rendered at z=16; https://www.openstreetmap.org/way/956286718 https://www.openstreetmap.org/#map=16/-33.7290/150.4565

imagico commented 3 years ago

I don't think this suggestion is going to work. We have a large number of uses of simple thin lines in relatively neutral colors and a delicate balance between those to make them distinguishable. Specifically the outlines we draw around landcover and road polygons need to be clearly differentiated from the barrier line signature. See #3976.

Adamant36 commented 3 years ago

What about just not rendering them at Z16/Z17? I know in California I've stopped mapping fences in any even semi-populated area because it adds to much clutter. It's also pretty unnecessary. It's also extremely hard to tell them apart from power lines. Especially at Z16. I don't seeing the fences in my Z16 example helps anyone. Even in less dense areas not having fences render at z16 wouldn't be that much of a loss. Screenshot 2021-07-14 205154 (Another Z16 example that's less cluttered then the first one, but still doesn't really add useful information) Screenshot 2021-07-14 205926

PeterLeGras commented 3 years ago

For z16/17, I would support either not rendering them, or having the same stroke weight/colour as the outline of landuse=residential (considering fences physically perform the same function as the limits to a residential area). I would rather fences be indistinguishable from residential bounds than visually compete with power=line for example (as mentioned above).

Adamant36 commented 3 years ago

"or having the same stroke weight/colour as the outline of landuse=residential"

I had thought about that, but we aren't suppose to map residential landuse at the plot level and it might be confusing for people that are trying deal with mistakes, or really just in general, if they are rendered the same. At least that would deal with them competing with power lines if nothing else though.

boothym commented 3 years ago

Don't think it looks too bad at z16, for example here in Edinburgh: https://www.openstreetmap.org/#map=16/55.9515/-3.2427

Certainly wouldn't support removing them from z17. fences

matkoniecz commented 3 years ago

Note that you should also consider rural areas, where fences can be very important feature.

If it would be map serving solely heavily micromapped urban areas it would be worth tweaking, but focusing only on that would be a mistake.

Examples shown so far are not too bad.

Adamant36 commented 3 years ago

Don't think it looks too bad at z16, for example here in Edinburgh

Sure, because the fencing there is extremely uniform and completely mapped. Neither are the case in 99% of the world though.

Note that you should also consider rural areas, where fences can be very important feature.

Personally, I'm not necessarily dismissing rural areas, but it's extremely rare that the fences in a rural area as well mapped as the Edinburgh example. Let alone are they that often mapped at all and generally it's better to use examples of where things are mapped versus where they aren't or are, but only extremely sparsely.

While I have no problem with considering rural areas, since most of my mapping is done in them, I don't think the 1% of use cases should dictate rendering of the other 99%. Otherwise, you just run into the law of diminishing returns or whatever. Whatever our personal opinions, OSM is mainly mapped in cities and used by people in them. It sucks, but that's life. I don't expect the style to bend over backwards to accommodate my rural mapping at the expense of everyone else and I don't think anyone else who maps in rural areas should either.

Examples shown so far are not too bad.

"Not to bad" seems like kind of a low bar if nothing is improved because of it.

This isn't directed at you per say and it's probably off topic, but sometimes the level of apathy about improving things shown by long time contributes surprises me. While I know most things are "good enough" at this point, that doesn't mean they can't be further tweaked or that doing so wouldn't be beneficial. It's impossible to do though when no one has the will to because it's "not to bad" as things currently are.

matkoniecz commented 3 years ago

Personally, I'm not necessarily dismissing rural areas, but it's extremely rare that the fences in a rural area as well mapped as the Edinburgh example.

I was rather thinking about a fence blocking access to some area (say, fence around part of forest or around a lake).

I don't expect the style to bend over backwards to accommodate my rural mapping at the expense of everyone else and I don't think anyone else who maps in rural areas should either.

Yes, this style focuses more on urban areas (#747 is a good example) but completely ignoring rural ones and focusing solely on micromapped urban areas is also not the best idea

"Not to bad" seems like kind of a low bar if nothing is improved because of it.

This isn't directed at you per say and it's probably off topic, but sometimes the level of apathy about improving things shown by long time contributes surprises me.

The problem is that any chance improves some areas and makes worse other (with very rare exceptions of things that are simply fixing bugs). This specific chance would make super mapped urban areas a bit better and rural areas significantly worse.

imagico commented 3 years ago

Personally, I'm not necessarily dismissing rural areas, but it's extremely rare that the fences in a rural area as well mapped as the Edinburgh example. Let alone are they that often mapped at all and generally it's better to use examples of where things are mapped versus where they aren't or are, but only extremely sparsely.

As a reminder: Be aware what our cartographic goals say about Diversity, in particular: well mapped areas are not supposed to have more weight here than less mapped parts of the world. This also means the target map user is the potential global map user and no special consideration is given to the current geographic distribution of actual map use.

This isn't directed at you per say and it's probably off topic, but sometimes the level of apathy about improving things shown by long time contributes surprises me.

What you call apathy is for the most part just awareness of how many of the styling decisions in this style - including the barrier line signature - are carefully made relative to other elements in the map and that it is - like @matkoniecz says - not trivial to change them without breaking things elsewhere.

No one has opposed addressing the reported problem if there is a good way to do so (and we have not closed the issue). But we know and we have pointed out above that this is not trivial and requires carefully looking at other line signatures, outlines of polygons and road casings in the style. Reviewing those and potentially adjusting them all in some way could be an option but is a lot of work and in no way guaranteed to be successful in the end.

Adamant36 commented 3 years ago

completely ignoring rural ones and focusing solely on micromapped urban areas is also not the best idea

To me a well map rural area is an equal example of fence clutter then that of a semi mapped urban one. Actually, my first example is considered rural anyway. The only road's with sidewalks are the main boulevard and a few others that are near schools, but only on one side of the street. By no means is it urban. So I wasn't focusing solely on micromapped urban areas.

The problem is that any chance improves some areas and makes worse other (with very rare exceptions of things that are simply fixing bugs). This specific chance would make super mapped urban areas a bit better and rural areas significantly worse.

There's always that trade off with everything though. In the meantime, I guess it depends on how you define rural and urban areas and what kind of landuse your talking about. I know there's some farmyards that are "rural" where it doesn't really add anything to show fences at z16. Since they are only important to cows, chickens, and look kind of cluttered. At least IMO. There's also large areas of private grassland that is separated by fences, but it does not matter because it is private. So it's not helpful to anyone to know where one starts and the other ends.

The target map user is the potential global map user

To me the "global map users" map everywhere. So urban versus rural wouldn't be an important distinction to such users. Anyway, if you notice in my first message I said "semi-populated areas", which has nothing to do with urban or rural, and @matkoniecz was the one that brought up people ignoring rural users. So if anything, he should be the one reminded of what the guideline says. The rural versus urban divide does come up in conversations a lot though. So I don't think he should be singled out for bringing it up here. It is a useful distinction to consider sometimes. Even if ultimately decisions shouldn't be based on it.

What you call apathy is for the most part just awareness of how many of the styling decisions in this style - including the barrier line signature - are carefully made relative to other elements in the map and that it is

Sure, some are just awareness. Some clearly aren't though. I chalk the ones that aren't up to apathy. Either that or a measure of neuroses about the map style and elite on the part of some of the maintainers, but I'm trying to be charitable. In the meantime, "awareness of how many of the styling decisions in this style are carefully made" is kind of a pointless, meaningless, and handwaving way to deal with issues. No one here is taking a laissez-faire attitude about the map styling or are providing feedback about the issue purely out of ignorance as to how decisions are made.

kocio-pl commented 3 years ago

What about just not rendering them at Z16/Z17?

I think that would be going too far - look at the gates all around your example, they would be floating in the space or should be also rendered later.

So making both fences and gates less rendered lighter sounds good to me.

The other idea would be to make a subtag to them, so we know when they can be rendered later without making changes in the rest of the cases, That could be hard to get the pattern which ones are usually small and densely packed, but it worked with lane/street side parking rendering, so maybe that could work here also.

Adamant36 commented 3 years ago

think that would be going too far - look at the gates all around your example, they would be floating in the space or should be also rendered later.

Gates don't render at z16 yet. So it wouldn't be a problem at that level. Your probably confusing them power poles.

Making both fences and gates less rendered lighter sounds good to me.

I had thought about that, but making barriers lighter was already tried and understandably rejected for curbs and I figured there would be the same problems for why it understandably didn't work in that situation. Maybe there wouldn't be though.

The other idea would be to make a subtag to them, so we know when they can be rendered later without making changes in the rest of the cases

That's an option, but it would probably take years to get off the ground as a tag and there's zero guarantee that it would. Let alone that there would be consensus here to render it once it does. My guess is that there wouldn't be. I think that creating a new tag should be default way to fix map clutter either. In the case of lane/street side parking rendering, it ultimately just made the broader problem of how prominently parking is rendered not get dealt with. Which I don't want to see happen here. As I don't think it's necessarily an urban versus rural issue. Making it one is way overly reductionist. I appreciate that your willing to creatively brainstorm ideas in the meantime though.

Adamant36 commented 3 years ago

I was rather thinking about a fence blocking access to some area (say, fence around part of forest or around a lake).

@matkoniecz If someone is planning on driving their car down some access road that might be blocked by a fence then really the solution to that should be the road having proper access tags so they don't assume it's accessible. In cases where there's a fence but it can still be accessed then the fence being rendered at z16 is superficial at best. If not wrong tagging. As there shouldn't be a case of a fence going across a highway without there being a gate.

It's not like they couldn't find all that out at z17 or z18 though. Otherwise, the same argument could made be made for why fences should be rendered at z15, z14 and so on. There's nothing inherently special about z16 that makes fences have to start rendering at that level. It's just assumed there is because it's the status quo and not following the status quo is always by default going to be discounted as bad. Even if it isn't.

jeisenbe commented 3 years ago

The current barrier width is not actually 1 pixel, it is 0.4 pixels. That’s why it looks medium gray instead of dark gray (#444). This is about the narrowest we can go. An alternative would be to use medium gray instead of dark black. See https://github.com/gravitystorm/openstreetmap-carto/blob/6a4cd4b5c5b589af2306b1f507671e78be4dd3ec/style/landcover.mss#L862-L865

In the future if we change to use high-resolution tiles, it could be possible to use an even narrower line, which would get better results.