Status of AGG support?

Steve Lime Steve.Lime at DNR.STATE.MN.US
Fri Jul 6 10:21:09 EDT 2007


Thanks, that's why the output blows. The forced palette has no room for interpretation those are the only colors allocated in the output image and all colors are mapped to that palette. That is done after all rendering is complete. It works this way to support tiling to that colors are absolutely consistent from tile to tile. The option really isn't useful beyond offline mass tiling.

Steve

>>> Stephen Woodbridge <woodbri at SWOODBRIDGE.COM> 07/05/07 11:28 PM >>>
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