[mapserver-users] Rendering Challenges
Stephen Woodbridge
woodbri at swoodbridge.com
Mon May 9 13:30:54 PDT 2011
Brent,
I think this is an excellent list of features that we should strive to
support in mapserver. I here that you ideal stated goal is to use the
files as published, but as a close alternative I can see that having a
utility to preprocess the files might make implementation faster and and
more consistent. This thought is based on some simple ideas:
1. what is inside/outside of a polygon? While we can compute this for
every polygon on every draw, I do not think we want to do that, so
having a preprocessor that standardizes polygon node ordering would
avoid this.
2. polygon label point and orientations. It would be nice to have a
utility, or the one above, that can do some basic analysis of a polygon
and pick the ideal label point and orientation. This then might create a
companion label point shapefile or add additional attribute columns for
this purpose. This approach also has the benefit that you could then
edit the label point file to override the automatically generated point.
I think these two items would greatly increase our ability to implement
in a consistent manner items 1, 2, 3, and 4.
On 5/9/2011 3:51 PM, Brent Fraser wrote:
> While testing v6, I can up with the following list of things I couldn't
> do (see http://i56.tinypic.com/8vvprn.png for a graphic):
>
> 1. Render lines inside polygon boundary (with or without opacity)
> 2. Place polygon annotation on/inside boundary line
> (http://trac.osgeo.org/mapserver/ticket/1592 point 8.)
> 3. Rotate anno if required to fit inside a polygon
> 4. Place polygon annotation outside polygon if anno doesn't fit inside
> 5. Place line anno above (or below) when using ANGLE FOLLOW
> 6. Rotate vector symbols to follow lines (a font might work but is a
> pain to create)
> 7. User specified character spacing
> 8. Erase lines (but not other objects) under annotation
For this one, do you want to erase ALL lines or just suspend drawing the
line of the object being labeled? If you truely want to erase all lines,
then you have to define what is a line! antialiased? wide lines? how is
a line different from the highlighted edge of a polygon? or a line that
has been drawn as a wide street with shoulders and a centerline?
Currently we support drawing a multi-pixel halo around the text the in
effect erases/replaces everything under the halo.
I like your example image as a great use case.
Thanks,
-Steve
>
> My goal was to use the published shp files
> (http://ftp2.cits.rncan.gc.ca/pub/canvec/50k_shp/092/h/canvec_092h06_shp.zip)
> without modification and see how close I could get to the published PDF
> (http://ftp2.cits.rncan.gc.ca/pub/cantopo/50k_geopdf/092/h/cantopo_092h06_geopdf.zip).
>
>
> Any suggested rendering techniques are appreciated. I'll file tickets
> for those problems deemed worthy.
>
More information about the MapServer-users
mailing list