-
-
Notifications
You must be signed in to change notification settings - Fork 369
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RFC-60: Add ability to skip ANGLE FOLLOW labels with too much character overlap #3523
Comments
Author: dmorissette |
Author: jmckenna |
Author: aboudreault |
Author: sdlime Steve |
Author: dmorissette What we were thinking was to leave the default behavior as it is now (i.e. do not reject anything), and add a MAXOVERLAPANGLE (better keyword name welcome) whose value is the max angle between two consecutive chars before the label is dropped. In Alan's tests, he found that 22.5 degrees seems like a good default value, so we would recommend in the docs that users use 22.5 as default to get started when they enable the feature, and tune it up or down depending on the type of data and their tolerance to bad labels. |
Author: aboudreault |
Author: sdlime How is overlap being determined? Just by angle or are you testing character bboxes? Steve |
Author: aboudreault |
Author: dmorissette |
Author: aboudreault |
Author: sdlime I wonder if AGG's curved label support could somehow be leveraged now that it's a required component. Some of the splined text support demos are spectacular. Visit http://www.antigrain.com/demo/index.html and look at the trans curve examples. Steve |
Author: tbonfort
Can't really be used as it needs a smooth curve to obtain correct results (see the distortion in characters on the sharp turns on the example image). In the mapserver case where we don't have curves but a succession of line segments, the output is illegible. |
Author: dmorissette |
Author: aboudreault |
Author: dmorissette |
Author: havatv |
attachment http://trac.osgeo.org/mapserver/attachment/ticket/3523/mapserver-wms.png :
|
attachment http://trac.osgeo.org/mapserver/attachment/ticket/3523/geoserver-wms.png :
|
attachment http://trac.osgeo.org/mapserver/attachment/ticket/3523/mapserver-label-with-fix.png :
|
attachment http://trac.osgeo.org/mapserver/attachment/ticket/3523/mapserver-collisions-repeatdistance-400-min-100.png :
|
attachment http://trac.osgeo.org/mapserver/attachment/ticket/3523/mapserver-label-boxes.png :
|
attachment http://trac.osgeo.org/mapserver/attachment/ticket/3523/maxoverlapangle-2.png :
|
Reporter: dmorissette
Date: 2010/08/25 - 22:24
Trac URL: http://trac.osgeo.org/mapserver/ticket/3523
As part of the FOSS4G 2010 Benchmarking exercise, one of the layers to render was contours with labels, and we've seen that MapServer did a poor job of labeling some contours with sharp curves using ANGLE FOLLOW, resulting in overlapping characters and unreadable labels.
OTOH, we found that GeoServer for instance didn't have this type of problematic labels because it simply detected the overlapping chars and skipped those labels, leaving room for other/better labels to fall around the same spot... leading to a better looking map.
This ticket is about implementing a similar mechanism to detect overlapping characters in ANGLE FOLLOW chars and skipping those labels.
Note that ticket #2221 started discussing this option as part of a wider discussion of curved label problems, but since #2221 aims to address a different issue using b-spline to smooth the lines an get less erratic char positioning along valid curved labels, I decided that the ability to skip invalid labels with overlapping chars along very sharp curves should get its own ticket (and eventually RFC).
The text was updated successfully, but these errors were encountered: