Status of AGG support?

Stephen Woodbridge woodbri at SWOODBRIDGE.COM
Fri Jul 6 00:28:03 EDT 2007


Steve Lime wrote:
> For comparison purposes I would use 24-bit png regardless.
> 
> My question would be how is the palette being constructed? Ideally

I take a very simple approach to the palette.txt file and that is:

grep -i color mapfile.map > a.txt
#edit a.txt a bunch
sort -u a.txt > palette.txt

wc -l palette.txt
36

so the rest of the colors can be allocated for anti-alias colors.

-Steve W

> you would create a representative image with lot's of linework and
> annotation and then use Gimp, Imagemagick or Photoshop to reduce
> colors to a 8-bit palette and use that. Otherwise the palette force
> option will do a distance computation and the results could get ugly
> (and these images are proof)...
> 
> Steve
> 
>>>> Paul Spencer <pspencer at DMSOLUTIONS.CA> 07/05/07 9:32 PM >>>
> PHP? Steve, I'm shocked its not a perl page ;)
> 
> I have noticed that the text gets 'bolder' when reducing the palette,
>  but not like this.
> 
> Have you tried without the formatoption for reducing the image?  One
>  thing that may happen is that the antialiasing colours are getting
>  mapped to black because there isn't room in the palette to allocate
>  the needed colours.  That does seem unlikely, though.
> 
> Cheers
> 
> Paul
> 
> On 5-Jul-07, at 4:56 PM, Stephen Woodbridge wrote:
> 
>> Steve,
>> 
>> http://imaptools.com/maps/compare-maps2.php?loc=2&ll=41.85 
>> +-87.65&address=&city=&state=&zipcode=&country=&asrv=1&amf=%2Fu% 
>> 2Fdata%2Fmaps%2Fgoogle-aa2.map&msa=mapserv-4.10&bsrv=1&bmf=%2Fu% 
>> 2Fdata%2Fmaps%2Fgoogle-agg.map&msb=mapserv-4.99&submit=Show
>> 
>> Here is a side by side comparison.
>> 
>> google-aa2 is using "PNG8" google-agg is using "agg/png24"
>> 
>> OUTPUTFORMAT NAME "agg/png24" MIMETYPE "image/png; mode=24bit" 
>> DRIVER "AGG/PNG" EXTENSION "png" IMAGEMODE "RGB" FORMATOPTION
>> "PALETTE_FORCE=TRUE" FORMATOPTION
>> "PALETTE=/u/data/maps/palette-google-agg.txt" END
>> 
>> 
>> ONE of the differences is mapserver-4.10 vs mapserv-4.99 and the 
>> fact that 4.99 has broken support for:
>> 
>> OUTPUTFORMAT NAME PNG8 DRIVER "GD/PNG" EXTENSION "png" MIMETYPE
>> "image/png" IMAGEMODE RGBA TRANSPARENT OFF FORMATOPTION
>> "QUANTIZE_FORCE=ON" FORMATOPTION "QUANTIZE_DITHER=OFF" FORMATOPTION
>> "QUANTIZE_COLORS=256" END
>> 
>> as none of the roads render.
>> 
>> -Steve
>> 
>> 
>> Steve Lime wrote:
>>> Would be nice to have a non-tiled, side-by-side browser to do the
>>>  comparison with... ;-) It doesn't look to me like identical
>>> mapfiles. For example, I'm looking at Chicago and there look to
>>> be some differences in scale settings. For example, the shape of
>>> Lake Michigan changes dramatically, see: 
>>> http://maps.dnr.state.mn.us/~stlime/chicago_gd.gif 
>>> http://maps.dnr.state.mn.us/~stlime/chicago_agg.gif  I'll wait on
>>> other comments until that can be confirmed. Steve
>>>>>> On 7/4/2007 at 10:47 AM, in message <468BC11E. 
>>>>>> 2050101 at swoodbridge.com>, Stephen
>>> Woodbridge <woodbri at SWOODBRIDGE.COM> wrote:
>>>> Hi Zak,
>>>> 
>>>> Thank you and the others for all the responses. I got it
>>>> working this morning:
>>>> 
>>>> http://imaptools.com/agg-test.html I have a few questions and
>>>> observations:
>>>> 
>>>> The OL app above has two base layers. Both use the same
>>>> mapfile, except one supports AGG and is using 5.0 and the other
>>>> is using 4.10.
>>>> 
>>>> 1) Notice the white lines in the water boarding some of the 
>>>> polygons. What is causing that? How do you get rid of these?
>>>> 
>>>> 2) If you switch between 4.10 and 5.0 AGG base layers notice
>>>> that the road widths change. What is causing this? I assume
>>>> this is the same issue as the polygons above.
>>>> 
>>>> 3) If you zoom in to 15K scale of closer so street names are 
>>>> displayed the text looks really bad on text ALIGN FOLLOW
>>>> labels. And the text is much bolder and blacker than the 4.10
>>>> example.
>>>> 
>>>> more below ...
>>>> 
>>>> Zak James wrote:
>>>>> Steve,
>>>>> 
>>>>> In our testing, the AGG renderer is about 10% faster than GD
>>>>> over a variety of conditions. One caveat is that the
>>>>> sub-pixel positioning of vertices (which greatly improves the
>>>>> appearance of features) can cause far longer rendering times
>>>>> if suitable overview data aren't available for a given scale.
>>>>> We discussed but did not implement strategies for mitigating
>>>>> this problem.
>>>> I think that discussion should get added to the RFC. If I
>>>> wanted to provide my own overview data what are we talking
>>>> about. Just having generalized data? Any rule of thumb on when
>>>> you need to provide this?
>>>> 
>>>>> Another issue is that the antialiasing tends to cause larger
>>>>> image file sizes.
>>>> There really is not much that you can do about this. It will 
>>>> impact on bandwidth and tile repository sizes.
>>>> 
>>>> -Steve
>>>> 
>>>>> zak
>>>>> 
>>>>> On 7/3/07, Stephen Woodbridge <woodbri at swoodbridge.com>
>>>>> wrote:
>>>>>> Paul, Steve,
>>>>>> 
>>>>>> A few questions:
>>>>>> 
>>>>>> 1) could one of you do a short post on what if anything
>>>>>> needs to be done to use AGG other than install the libs and
>>>>>> select some ./ configure options.
>>>>>> 
>>>>>> 2) Any sense on how this compares speed wise to the GD 
>>>>>> implementation.
>>>>>> 
>>>>>> 3) is what is in the trunk all that 5.0 will see or is
>>>>>> there some additional work that is planed to be
>>>>>> implemented.
>>>>>> 
>>>>>> I would like to give it a try.
>>>>>> 
>>>>>> -Steve W
>>>>>> 
>>>>>> Paul Spencer wrote:
>>>>>>> The other thing that I am very keen to have is text
>>>>>>> rendered/ placed using AGG.  Not sure if it will be done
>>>>>>> for 5.0 though.
>>>>>>> 
>>>>>>> Cheers
>>>>>>> 
>>>>>>> Paul
>>>>>>> 
>>>>>>> On 3-Jul-07, at 1:25 PM, Steve Lime wrote:
>>>>>>> 
>>>>>>>> Hi Tom: AGG support is in the codebase for 5.0. I still
>>>>>>>> owe an RFC to explain what was done although the
>>>>>>>> addition of AGG doesn't affect any other portions of 
>>>>>>>> MapServer. It's a big user feature though. I recently
>>>>>>>> got a big time sink off my plate and will work that up 
>>>>>>>> ASAP.
>>>>>>>> 
>>>>>>>> The support is relatively complete. The guys from DM 
>>>>>>>> Solutions can probably comment further as they've been
>>>>>>>> using it the most. The AGG vs. GD images DM has
>>>>>>>> supplied are very nice. The quality difference is
>>>>>>>> noticeable with roads in
>>>>>> particular.
>>>>>>>> The only missing capability that I am aware of has to
>>>>>>>> do with PIXMAP symbols that contain an alpha channel.
>>>>>>>> There is a fundamental difference in how AGG and GD 
>>>>>>>> handle alpha blending (GD is flat out backwards).  We
>>>>>>>> use GD to manage the pixel buffer that AGG is rendering
>>>>>>>> into so that becomes a problem. I'll go into options in
>>>>>>>> the RFC.
>>>>>>>> 
>>>>>>>> Anyway, other than that the support seems to be working
>>>>>>>>  nicely is worth trying.
>>>>>>>> 
>>>>>>>> Steve
>>>>>>>> 
>>>>>>>>>>> On 7/1/2007 at 10:08 PM, in message
>>>>>>>> <7b5b710d0707012008i59c41e8bq8e0ef4d8022f40f8 at mail.gmail.com>,
>>>>>>>> T om
>>>>>> Beard
>>>>>>>> <tom at PROJECTX.CO.NZ> wrote:
>>>>>>>>> Hi there,
>>>>>>>>> 
>>>>>>>>> This is my first time posting here, and I hope this
>>>>>>>>> is the right forum to ask this question.
>>>>>>>>> 
>>>>>>>>> I was wondering what the status of AGG support was
>>>>>>>>> for the 5.0 release. On searching the archives, the
>>>>>>>>> most recent reference I could find was
>>>>>> the
>>>>>>>>> minutes from the May 22 IRC meeting that said that
>>>>>>>>> there would be
>>>>>> an RFC
>>>>>>>>> freeze on June 15, and that an RFC for AGG was 
>>>>>>>>> "forthcoming". Did AGG support make it into that
>>>>>>>>> freeze? Is it listed somewhere online?
>>>>>>>>> 
>>>>>>>>> I'd also be interested to know if there is a version
>>>>>>>>>  currently in Subversion that includes AGG sub-pixel
>>>>>>>>> rendering and that works well enough to have a go at
>>>>>>>>> compiling on Windows.
>>>>>>>>> 
>>>>>>>>> Regards, Tom Beard
>>>>>>> +----------------------------------------------------------------
>>>>>>>  -+ |Paul Spencer pspencer at dmsolutions.ca    | 
>>>>>>> +----------------------------------------------------------------
>>>>>>>  -+ |Chief Technology Officer
>>>>>>> | |DM Solutions Group Inc                http:// 
>>>>>>> www.dmsolutions.ca/ | 
>>>>>>> +----------------------------------------------------------------
>>>>>>>  -+
> 
> +-----------------------------------------------------------------+ 
> |Paul Spencer                          pspencer at dmsolutions.ca    | 
> +-----------------------------------------------------------------+ 
> |Chief Technology Officer                                         | 
> |DM Solutions Group Inc                http://www.dmsolutions.ca/ | 
> +-----------------------------------------------------------------+



More information about the mapserver-dev mailing list