Consider supporting add-placement/ignore-placement for all symbolizers #1535

springmeyer opened this Issue Oct 15, 2012 · 2 comments

3 participants

Mapnik member

Realizing after talking with @gravitystorm and @makella that it would be useful to think about line/polygon symbolizers being able to contribute to the collision detector cache used to avoid label overlaps. In this sense we could think of all symbolizers supporting at least two modes: either put feature bbox's in the collision cache or don't. Symbolizers like line and polygon would still default to not populating the cache while symbolizers like marker, text, and shield would still default to populating the cache.

see also

@springmeyer springmeyer was assigned Nov 29, 2012

I wanted to ask if there's any progress on this issue. After a long evening of talks about improving rendering we decided it's necessary to have a way to write into the label cache. See the following image:

The label in the right bottom should be avoided, as it crosses two bridges. We discussed if it would be possible to introduce a <LineLabelCacheBlock> or so, but the suggested method would be even better. I could just render a transparent line with allow_overlap="no" on top of the bridge label, and no river names would obscure these bridges again.

So +1 to this issue.

Mapnik member

@plepe - You can render some text/markers with opacity="0" along those bridges as workaround.

@springmeyer springmeyer removed this from the Mapnik 3.x milestone May 14, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment