Fuzzy brushes and antialiased lines

Daniel Morissette dmorissette at DMSOLUTIONS.CA
Fri Dec 16 15:06:26 EST 2005


As promised in the 4.8.0-beta3 release announcement a few minutes ago, 
here is a bit more info about the fuzzy brushes and antialiased lines 
support that was just added.

First, here are Steve's test mapfile and results:

   http://maps.dnr.state.mn.us/testing/brushes/test.map
   http://maps.dnr.state.mn.us/testing/brushes/test.png

I also copied below from the first message in the "Fuzzy brushes..." 
mapserver-dev thread that describes how to use the new feature.

Daniel


-------- Original Message --------
Subject: [UMN_MAPSERVER-DEV] Fuzzy brushes...
Date: Wed, 14 Dec 2005 00:05:18 -0600
From: Steve Lime <steve.lime at DNR.STATE.MN.US>
Reply-To: Steve Lime <steve.lime at DNR.STATE.MN.US>
To: MAPSERVER-DEV at LISTS.UMN.EDU

In case anyone would like to test I have hooked up the fuzzy brush 
generator in mapgd.c for the most trivial line drawing case (no symbol 
defined). To use:

1) define a 24-bit output format, IMAGETYPE 'png24' works nicely
2) define a simple style definition for a line layer (or polygon 
outline) like so:

   STYLE
     WIDTH 3
     COLOR 255 0 0
     ANTIALIAS TRUE
   END

3) set TRANSPARENCY ALPHA to enable alpha blending

Caveats:

  - brushes need to be odd sized. That requirement is enforced in the 
brush builder which detects even sized requests and rounds up. Symbol 
scaling should work just fine.

  - you'll notice that the line "fades" in at the start which is due to 
the  transparent nature of the brush. Adjusting the default "hardness" 
may minimize that.

That should do it. I will enable for circles layers and other instances 
  where it makes sense (circle symbols, simple symbols with dash 
patterns and so on) ASAP. I also will enable image cache use in the most 
simple case which may help performance a bit.

Note, I hope to do away with 3) (there is a bug filed) but can't yet 
because of a problem in the image merging code in mapgd.c (not mine old 
code for a change).

Steve



More information about the mapserver-users mailing list