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

Implement issue 2288 (render natural=earth_bank) #4775

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

GunSmoker
Copy link

Fixes #2288

People use natural=cliff everywhere instead of natural=earth_bank because natural=earth_bank is not rendered. However, it is very similar to man_made=embankment (which is rendered) in landscape impact.

Changes proposed in this pull request:

  • Render natural=earth_bank similarly to man_made=embankment (smaller than natural=cliff)

Visual style for natural=earth_bank is in earth_bank.svg, so it can be changed/adjusted later.

Before
image

After
image

Copy link
Collaborator

@pnorman pnorman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the difference between symbols/embankment.svg and symbols/earth_bank.svg?

Can you squish the commmits together?

@imagico
Copy link
Collaborator

imagico commented Feb 23, 2023

Thanks for the pull request. In principle i think rendering natural=earth_bank would be worth considering. But i am not sure if rendering it identical to man_made=embankment is the right approach. The way natural=earth_bank is used is typically not just for a naturally occurring embankment, it is for erosion structures (i.e. it has a distinct geomorphological meaning). Also mapping practice is that natural=earth_bank tends to imply a certain minimal size because smaller structures are often (and documented to be) mapped with natural=gully.

Also about 25 percent of features are tagged with earth_bank=* providing further information - which is quite a significant fraction. Hence it could be worth considering to differentiate rendering in a subtle way based on that.

The possibilities to use line patterns to illustrate features like this in a differentiated fashion are plenty so there is a lot of room to try out different designs here. If you don't think this is something you would like to do maybe others can contribute with suggestions. It might be useful to look at other line signatures we use in that context (like natural=cliff, natural=ridge, natural=arete and various barrier types). In a way natural=cliff and natural=earth_bank form a pair similar to natural=arete and natural=ridge.

@richlv
Copy link
Contributor

richlv commented Oct 30, 2023

Oh please this. I cannot blame people mapping small earth banks as cliffs, but it makes data quality shit.
How about continuous improvement and just implementing something that renders earth banks (and gullys...) in the first place?

Otherwise osm-carto ends up as a perfect (haha) example of "perfect is the enemy of good" with PRs stuck for years, because we're all such damn perfectionists.
Paradoxically, being perfectionists on rendering kicks the data quality perfectionists in the crotch, as it leads to thousands of "technically mistagged but who can blame them" entities :)

@imagico
Copy link
Collaborator

imagico commented Oct 30, 2023

This is an off-topic matter here on a PR discussion but i none the less like to make this very clear:

It is not ok to demean and insult essentially everyone who has during the last 10 years worked on development of this style with the ambition to abide by basic cartographic principles and to produce a decent quality map, structuring the exceptional number of different features we render in a way that makes the map readable and useful at least in a very modest way by calling them damn perfectionists collectively.

The initiative of @GunSmoker to implement this feature is commendable - but the implied idea in the comment by @richlv that requesting to develop/select a distinct design for a semantically distinct feature (if it was not we would not need to render it) and discussing possible approaches to that amounts to perfectionism is about as far from reality as it can get. And above in #4775 (comment) i explicitly wrote:

If you don't think this is something you would like to do maybe others can contribute with suggestions.

So the real question is: If getting natural=earth_bank into the map is so important for you why didn't you work on some ideas how to render it, or - in case you don't feel qualified for that - motivate other people to do so.

Anyway - if @GunSmoker or anyone else who wants to work on this is unsure about how to approach this design wise - the initial comment on #2288 already contained a sketch. I developed a design concept for the AC-Style some time ago that could also serve as inspiration. Beyond that - presenting and discussing design ideas on #2288 would be the usual approach here.

And for anyone who does not want to contribute to OSM-Carto and still wants to promote rendering of natural=earth_bank - working on showing that in any other maps would be helpful as well. So far the only maps that i am aware of that show natural=earth_bank are OsmAnd and the AJT-Style - both showing it with a gray symmetric pattern (which is not so good because it does not show the orientation). So there is plenty of opportunity to support mappers in that regard.

@i-ky
Copy link

i-ky commented Oct 31, 2023

So the real question is: If getting natural=earth_bank into the map is so important for you why didn't you work on some ideas how to render it, or - in case you don't feel qualified for that - motivate other people to do so.

Because there is an open PR? I guess it is part of open source etiquette to allow someone who already started working on an issue to finish it. It is then up to maintainers to check up on PRs and close stale ones.

@i-ky
Copy link

i-ky commented Oct 31, 2023

So far the only maps that i am aware of that show natural=earth_bank are OsmAnd and the AJT-Style - both showing it with a gray symmetric pattern (which is not so good because it does not show the orientation).

Organic Maps renders natural=earth_bank the same way as natural=cliff.

@imagico
Copy link
Collaborator

imagico commented Oct 31, 2023

I guess it is part of open source etiquette to allow someone who already started working on an issue to finish it. It is then up to maintainers to check up on PRs and close stale ones.

This PR is open because we want to give @GunSmoker the opportunity to work further on this - at their own pace.

That does not in any way prevent or discourage others from developing design ideas for the same feature or submitting PRs for it. Remember: This is a map design project, not a software development project. And i even explicitly called for others to contribute suggestions.

But lets not further pollute this PR with generic discussion. Any comments on rendering natural=earth_bank in general should go to #2288, for any discussions or questions regarding procedure and conventions of this project please open a new issue.

@i-ky
Copy link

i-ky commented Oct 31, 2023

I have a suggestion. Please merge this PR as is. It will recognize @GunSmoker as Contributor, it will immediately improve the usability of OSM default tiles by eliminating "tagging for the renderer" issue for cliff/earth_bank and it will open the way for better natural=earth_bank rendering designs.

If this PR is not acceptable as is, please make it clear, what needs to be changed/improved. Your wording in #4775 (comment) is too vague: "i am not sure", "it could be worth considering", "a lot of room to try out", "maybe others can contribute", "it might be useful"...

Copy link
Collaborator

@imagico imagico left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this PR is not acceptable as is, please make it clear, what needs to be changed/improved. Your wording in #4775 (comment) is too vague: "i am not sure", "it could be worth considering", "a lot of room to try out", "maybe others can contribute", "it might be useful"...

I think I have already done so in my latest comments here - the design for rendering natural=earth_bank needs to be distinct from other line features in the style with different meaning, needs to reflect the directed, asymmetric nature of the ways with that tag, should integrate harmonically with the style otherwise, in particular with the other topographic features (natural=cliff, natural=ridge, natural=arete and man_made=embankment) and should be intuitively recognizable as what the tag is primarily used for (erosion structures in non-solid material) in context of these other tags.

That wording in comments and reviews here is often somewhat careful and non-authoritarian is what comes with the territory of a cooperative project. I express my preferences but i avoid being overly brusque and definitive to leave room for developing consensus among diverging views of different maintainers where possible. And i try to avoid limiting the creativity of other contributors by implying that my limited perspective on what is possible and feasible is the ultimate wisdom on everything. But you can always ask for clarification if needed.

@imagico imagico marked this pull request as draft November 10, 2023 14:33
@imagico
Copy link
Collaborator

imagico commented Nov 10, 2023

Marked this as draft. It requires development of a distinct line signature for natural=earth_bank - see comments above for details.

@dch0ph
Copy link
Contributor

dch0ph commented Dec 29, 2023

Agree that natural = earth_bank needs a distinctive render (just getting something on the map is the easy bit - the styling is the hard bit). Recycling man_made=embankment doesn't work; it looks like some kind of retaining wall.

Personally I don't find line feature stylings, and particularly the embankment pattern, very readable, so I'm not sure there is much room for an additional pattern.

One suggestion would be to use the well-tested cliff styling, but use natural=peak brown to distinguish an earth bank from a (rock) cliff. I disagree that earth bank features are necessarily smaller than cliffs. The major difference is the material and how badly you would be damaged falling off.

image

As additional food for thought, here's my OSMCarto-based rendering of natural = earth_bank. This is a marker-based styling rather than a line-pattern styling since the PDF mapnik output seems to make a mess of line-patterns. The triangles are slightly rounded rather than pointy.

I actually do use this same style for man_made = embankment and natural = earth_bank, partly again because I can't make the line pattern styles work with PDF, but also because it captures the same concept of an earth-based slope.

@imagico
Copy link
Collaborator

imagico commented Jan 5, 2024

General discussion on design ideas how to render natural=earth_bank belongs to #2288, not here.

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

Successfully merging this pull request may close these issues.

render natural=earth_bank
6 participants