Opened 11 years ago

Closed 10 years ago

#2690 closed defect (fixed)

Trouble rendering large multipolygons

Reported by: Yves Owned by: osm@…
Priority: major Milestone:
Component: tilesathome Version:
Keywords: osmarender multipolygon area corine Cc: rammer


I found a problem with a multipolygon (id 46541256). This is a >8000 nodes forest properly rendered with mapnik, but not with osmarenderer.

Attachments (1)

MultipolygonClosing.diff (3.4 KB) - added by Irrfahrt 10 years ago.
patch to fetch all the required data to close open multipolygons

Download all attachments as: .zip

Change History (8)

comment:1 Changed 11 years ago by Tom Hughes

Component: adminosmarender
Owner: changed from Tom Hughes to osm@…

If you actually choose osmarender as the component instead of just typing it into the keywords then the bug will get sent to the right place...

comment:2 Changed 11 years ago by Yves

Didn't I? Sorry, it was late.


comment:3 Changed 10 years ago by osm@…

Resolution: wontfix
Status: newclosed

I suspect that this is really a bug in the tiled design of tiles@home. If you were able to render the whole planet at once using osmarender the relation should render just fine.

comment:4 Changed 10 years ago by HamishB

Component: osmarendertilesathome
Resolution: wontfix
Status: closedreopened

more examples:

It's in very large multipolygon relations (>10k nodes, split into 495 nodes per way). AFAICT JOSM's Validator doesn't find any problems. All looks good in the online Mapnik tiles, just the Osmarender tiles go funny.

thanks, Hamish

comment:5 Changed 10 years ago by osm@…

Owner: changed from osm@… to osm@…
Status: reopenednew

comment:6 Changed 10 years ago by rammer

Cc: rammer added

I did some poking around with this and it seems that the large multipolygons get rendered correctly if the osm file fed to osmarender contains all the members of the multipolygons that intersect the tile to be rendered. For example tile It contains relation Osmarender downloads <bounds minlat="61.6794500443896" minlon="23.66455078125" maxlat="61.7419302246182" maxlon="23.88427734375" origin=""/>

And therefore not all members of relation 445107 is included. If I open the same bounding box in josm and download all the members of that relation, save the data and using that render the same area I get a perfect render.

So you need to somehow coax osmarender to recursively download all members of the multipolygons in the tile to be rendered. Using something like

Changed 10 years ago by Irrfahrt

Attachment: MultipolygonClosing.diff added

patch to fetch all the required data to close open multipolygons

comment:7 Changed 10 years ago by Deelkar

Resolution: fixed
Status: newclosed

Applied Patch by Irrfahrt as r23267. Clients will start updating shortly.

Note: See TracTickets for help on using tickets.