Hi I've made amendments to this relation in an attempt to get it to render correctly: https://www.openstreetmap.org/relation/7347417#map=18/51.02516/-3.93304

This doesn't appear to be rendering the innermost (which has an outer role) polygon in this correctly in OSM-Carto.

Note: Cycle & Transport render it correctly (those renders are from before my updates) Note: I've changed the innermost polygon to landuse=residential to distinguish it from the wood. I'll swap back once sorted.

https://wiki.openstreetmap.org/wiki/Relation:multipolygon#Island_within_a_hole

Am I missing something or is there an OSM-Carto error?

asked 13 Aug '18, 16:40

DaveF's gravatar image

DaveF
1.0k365070
accept rate: 0%


The water should be turned into relation too - see https://www.openstreetmap.org/relation/8529025. Otherwise it tries to cover all the area inside. The rendering should be updated soon.

permanent link

answered 13 Aug '18, 17:05

kocio's gravatar image

kocio
1.3k1427
accept rate: 19%

edited 14 Aug '18, 15:00

Tordanik's gravatar image

Tordanik
10.3k1294125

Apologies, @kocio. I didn't fully read the wiki link I sent you, where it says an additional relation is required if the inner island needs to be rendered differently. This situations doesn't require that so I removed the tagging as well as the relation you added. It still doesn't render. Here is another example which I hadn't edited: https://www.openstreetmap.org/relation/6968441#map=19/51.60949/0.01005

I could have sworn it used to render accurately previously with just one relation in OSM-Carto.

(14 Aug '18, 13:53) DaveF
1

I still think that https://www.openstreetmap.org/way/616701768 should be turned into relation. It's water with a hole inside, where the island (islet) is, so it's not the whole area covered with water. Any shape with holes inside should be relation.

The water multipolygon is totally different problem than wood multipolygon - the water shape is independent from its role as a hole in the wood.

(14 Aug '18, 14:02) kocio

When the water was relation, the tree symbols were rendered on the islet as expected. The only problem is why green background was not there, but this might be OSM Carto issue.

(14 Aug '18, 14:24) kocio

In the region you linked to, you have defined two areas. One, representing a forest, shaped like this:

Outline of the forest multipolygon

And one, representing a water body, shaped like this:

Outline of the water polygon

There is nothing about the water area to indicate that it has an island. So according to your mapping, the location in the center is both part of the forest area and the water area.

To fix this, it would be best to restore the multipolygon relation 8529025 that kocio originally created.

Apart from that issue, the forest multipolygon is correct, although the use of multiple outer members is unnecessary here. (The forest on the island could simply be a separate polygon.)

permanent link

answered 14 Aug '18, 15:16

Tordanik's gravatar image

Tordanik
10.3k1294125
accept rate: 35%

From the wiki link I posted: "A construct like this would previously have required different multipolygon relations, one with way 1 being outer and way 2 being inner, as well as one with way 2 being outer and way 3 being inner."

So now, MPs don't require a doubling up of relations.

Again, from the wiki: "Such cascading is still needed when the "island" in the middle is something else than the area on the outside, but where the "island" is the same stuff it can just be made a hole in the hole."

In this case it isn't different, it should be rendering as a wood.

It's interesting that other renderings manage to do it: https://www.openstreetmap.org/#map=18/51.02509/-3.93343&layers=C

(16 Aug '18, 16:27) DaveF
1

That example describes an island in a hole, not an island in a lake. In that example, way #2 doesn't have any tags, so the area surrounding the island is an empty void. If you tag way #2 as natural=water, that filled polygon would override the island, since there's nothing describing the island as being an inner of way #2. That's why the second relation is required. TBH, the example in the wiki is misleading, because it doesn't work for an "island" in the geological sense (ie. land inside of water).

(16 Aug '18, 17:26) alester
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×361
×181
×104

question asked: 13 Aug '18, 16:40

question was seen: 289 times

last updated: 16 Aug '18, 17:26

powered by OSQA