Opened 5 years ago

Closed 5 years ago

Last modified 4 years ago

#2404 closed defect (invalid)

Island label not rendered right when island is represented as a way

Reported by: Vid the Kid Owned by: mapnik-team@…
Priority: minor Milestone:
Component: mapnik Version:
Keywords: island name tag render way place=island Cc:



The way's "name" is rendered along its outline. But the way is closed, and tagged place=island, so the renderer should understand that it's an area without an area=yes tag.

Ideally, the label should be formatted exactly as if the island were represented with a single node. (The same ideal holds for other features that can be mapped as single nodes or as ways/multipolygons, though many don't...)

Change History (4)

comment:1 Changed 5 years ago by chriscf

Must be a data error of some sort. See any nuber of islands rendered correctly here:

comment:2 Changed 5 years ago by chriscf

  • Resolution set to invalid
  • Status changed from new to closed

Island was missing natural=coastline. Not a rendering bug.

comment:3 follow-up: Changed 4 years ago by Vid the Kid

I think the bug was misunderstood. It's about label rendering, not rendering of the island itself. Besides, why should a tiny island require coastline tagging when it's in a lake that doesn't use coastline tagging? That is to say, if looking at coastline tagging alone, the whole area is land, so making a coastline way for the island would be redundant.

I've made a (almost certainly unrelated) change to the manner in which the reservoir is tagged. Perhaps now the island itself will appear. But if the label is still rendered incorrectly, I'm going to reopen this ticket. A closed way tagged with place=island should have a label that looks identical to that rendered for a node of the same tagging.

comment:4 in reply to: ↑ 3 Changed 4 years ago by Ldp

Replying to Vid the Kid:

A closed way tagged with place=island should have a label that looks identical to that rendered for a node of the same tagging.

Only if you add area=yes (currently[*1])

Your island now shows since you added a natural=* (natural=land) tag to it. That also forces it to be seen as an area. You don't need to add natural=land when it's an inner of a water multipolygon. natural=land also has the disadvantage that it will hide any other landuse that you map on the island. As such, with multipolygons, natural=land can be considered deprecated.

*1) I've set place=* to be seen as a polygon candidate by itself. This will only go into effect at the next full db reload. After that, area=yes will no longer be required for place=* (for the mapnik map, that is).

Note: See TracTickets for help on using tickets.