Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

New ShieldSymbolizer boolean 'shield-overlap' parameter #1322

Open
Andrey-VI opened this Issue · 7 comments

3 participants

@Andrey-VI

Want to use ShieldSymbolizer to draw cities with labels using placement-finder algorithm, but have one problem. If cities points is overlapping, when one of the city is completely missing (no point and no text). So needed a "shield-overlap" parameter (true/false) to prevent this behavior. And if no place for one of the city's label found we don't put corresponding city's point.

Current 'allow-overlap' parameter leads to overlapping not only shields but corresponding text. So another way — preventing text overlapping when "allow-overlap='true'" and allowing shields overlapping only.

One example: two capitals — Kinshasa and Brazzaville. If you look at Google Maps or Bing Maps you'll see that on zooms 1—7 only Kinshasa there (due to it's population). But with overlapping cities points we can put both capitals (points with labels) on the map.

@springmeyer
Owner

See also #1338, which looks like it provides another viable solution for this issue of ensuring groups of symbolizers (say a point and text) are placed together.

@Andrey-VI

It's not clear for me now that this GroupSymbolizer provides same functionality that ShieldSymbolizer does.

Anyway, I think that we need ShieldSymbolizer to be more flexible when dealing with points/text overlapping.

@Andrey-VI

Some examples:
1. Brazzaville + Kinshasa
Alt text
2. Detroit + Windsor
Alt text

@Andrey-VI

@herm,
is it possible to implement this in the harfbuzz branch?

@herm
Collaborator

Sorry, I somehow didn't see your first comment. Yes it should be possible to implement this.

@herm herm was assigned
@Andrey-VI

OK. Great!
Will be a good feature for a planned 3.xx version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.