NOTICE: is no longer in use from 1st March 2024. Please use the OpenStreetMap Community Forum

You can find that there is a swimming pool which I want to map. However, the swimming pool is missing even if I tagged layer=3. What happened and how can I make it appear? Thanks!

asked 29 Dec '17, 04:23

Wetitpig0's gravatar image

accept rate: 10%

edited 29 Dec '17, 04:24


it's easier if you directly link to the object itself:

(29 Dec '17, 21:56) escada

I guess it has something to do with how the standard map layers swimming pools and buildings, there is no tag you can add to the swimming pool (such as layer) to influences this. The only way to change this is alter the code of the map generation.

permanent link

answered 29 Dec '17, 21:58

escada's gravatar image

accept rate: 21%

So I need to report to Mapnik?

(30 Dec '17, 01:58) Wetitpig0

No, Mapnik is the technology that is used, that does not care in which order one renders the objects. You can report on the Github website of openstreetmap-carto, which is where the maintainers of the default style keep track of the issues and requests.

(30 Dec '17, 06:47) escada

If a swimming pool is placed within the confines of a residential area, it will render on the standard map. However, in this case, the residential area overlies a mall, which is also mapped as a building. If a swimming pool is mapped within the confines of a building, it will not be rendered on the standard map. At least, that is my experience. Changing levels or adding height or min_height to a swimming pool will not affect the outcome. I could be wrong, but I think if a swimming pool is combined with a building, the pool will not render on the map.

permanent link

answered 31 Dec '17, 06:46

chachafish's gravatar image

accept rate: 8%


Here is an example of a pool which renders on the map. The pool is located within a residential area. The pool is surrounded by, but not covered by a building. So, the pool renders on the map.

However, here is a pool that renders on the map which is contained within a building. In this case, the pool is part of a multipolygon.

If you were to make your pool part of the mall building and as part of a multipolygon, it will render on the map.

(31 Dec '17, 06:57) chachafish

Good. Let me try later. Btw, this means a swimming pool must be on ground level?

(31 Dec '17, 07:23) Wetitpig0

@chachafish, if you create a multipolygon of the building excluding the swimming pool, you are saying that the swimming pool does not belong to the building. The outcome will show the swimming pool on the standard rendering, that is true. But for me, that's tagging for a specific renderer, which is considered a bad practice.

(31 Dec '17, 07:34) escada

@escada, thank you for the input. I'm certainly no expert on the usage of multipolygons. From the OSM Wiki: "If the inner way represents something in itself (e.g., a forest with a hole where the hole is a lake), then the inner way must be tagged as such." As far as Wetitpig0's question goes, I would assume the mall underlies the pool and that creating a multipolygon would be a correct course of action, since the mall and the pool do not "belong" to each other?

(31 Dec '17, 08:37) chachafish

@escada, also, just so I understand the rules as you pointed them out, the Wiki does not seem to be as clear on this subject as you've stated it. I'm not disagreeing with you, but is there a set of rules which reflect your statement that two items which are part of a single mulitpolygon do not belong to each other? Cheers :)

(31 Dec '17, 08:42) chachafish

A multipolygon is used to create a hole in the other object. The relation represents the area between the outer ring and the inner ring. So when you place a tag like landuse=forest (or building=*) on the relation you indicate that the parts with the role "inner" do not belong to the landuse/building. The ways with the inner-tag can represent something on their own, but no longer belong to the object described by the relation (so the lake does not belong to the forest (aka area with trees)).

p.s. For simplicity I just assume landuse=forest means the area with trees, which is the interpretation of carto-css IMHO. In a more correct interpretation, you need a landuse=forest on the outer ring, a multipolygon landcover=trees tags and an inner ring with natural=water. But this will not be rendered as I wish it would

(31 Dec '17, 10:38) escada

So the renderer simply doesn't support a pool on the top of a building? :(

(31 Dec '17, 16:30) Wetitpig0

Yes, that particular map rendering will not show a pool on top of a building. There are likely other map renderings that do, though. Don't worry too much about how things look in one rendering.

(02 Jan '18, 21:44) alester
showing 5 of 8 show 3 more comments

Follow this question

By Email:

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



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "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:


question asked: 29 Dec '17, 04:23

question was seen: 2,170 times

last updated: 02 Jan '18, 21:44

NOTICE: is no longer in use from 1st March 2024. Please use the OpenStreetMap Community Forum