Andreas, I made that change in mapagg.cpp and it seems to do exactly what I need. Wunderbar!
As for providing an option to switch rasterizer based on an option, how about reviving the FORMATOPTION 'ANTIALIAS'? Thanks, Erik On Wed, Oct 18, 2017 at 9:18 AM, Eichner, Andreas - SID < [email protected]> wrote: > Nope, this won't work: > > r->default_gamma = atof(msGetOutputFormatOption( format, "GAMMA", "0.75" > )); > if(r->default_gamma <= 0.0 || r->default_gamma >= 1.0) { > r->default_gamma = 0.75; > } > > From mapagg.cpp lines 844-847 forces 0 < GAMMA < 1 > Also note that MapServer uses a linear gamma function defined as > > double operator() (double x) const > { > if(x < m_start) return 0.0; > if(x > m_end) return 1.0; > return (x - m_start) / (m_end - m_start); > } > > Where m_start is _always_ set to 0 and m_end is set to the GAMMA value > given by you (or the default 0.75). > I think someone should check this - to me it seems a power function was > intented... > > HTH > > > -----Ursprüngliche Nachricht----- > > Von: mapserver-users [mailto:[email protected]] Im > > Auftrag von [email protected] > > Gesendet: Mittwoch, 18. Oktober 2017 14:05 > > An: [email protected] > > Betreff: Re: [mapserver-users] Draw roads WITHOUT anti-aliasing > > > > Hi, > > > > > > > > > > I did some quick tests with : > > > > > > > > > > OUTPUTFORMAT > > NAME "png_G0" > > DRIVER AGG/PNG > > MIMETYPE "image/png" > > IMAGEMODE RGB > > EXTENSION "png" > > FORMATOPTION "GAMMA=0.0" > > END > > > > > > > > > > and shp2img with options -i > > > > > > eg: shp2img -m 01_polygon_td_poly.map -o 01_polygon_td_poly.png -i > > png_G0 > > > > > > > > > > > > I did some tests with both polygons, polygon outlines and lines and they > > all seems to have anti-aliasing as far as I could see. > > > > Would this be an ok way to test it? I also have some people that would > > like to do lines without anti-aliasing for a strange reason. > > > > > > > > > > > > Lars Schylberg > > > > > > > > > > > > -----Originalmeddelande----- > > > Från: "Rahkonen Jukka (MML)" <[email protected]> > > > Till: "Eichner, Andreas - SID" <[email protected]>, "Erik > > H" <[email protected]> > > > Kopia: [email protected] > > > Datum: 2017-10-18 11:13 > > > Ämne: Re: [mapserver-users] Draw roads WITHOUT anti-aliasing > > > > > > Hi, > > > > > > I suppose that the amount of antialiasing with AGG is set with "gamma" > > parameter. Mapserver supports that at least for polygons as documented > > in http://www.mapserver.org/mapfile/outputformat.html but you could try > > if using gamma=0.0 has an effect on lines as well. It may be that it > > does not because search > > > > > https://github.com/mapserver/mapserver/search?utf8=%E2%9C%93&q=gamma&typ > > e= > > > seems to find only something that is tied to polygon outlines > > > https://github.com/mapserver/mapserver/blob/branch-7- > > 0/renderers/agg/include/agg_renderer_outline_aa.h > > > > > > > > > If gamma does not work for lines then it could be worth making a > > feature request for adding a new formatoption "GAMMA_LINE=[]. > > > > > > Couple of Mapnik links dealing with the same issue: > > > http://gis.19327.n8.nabble.com/Turning-off-anti-aliasing- > > td5339458.html > > > http://mapnik.org/mapnik-reference/#3.0.6/line-gamma-method > > > > > > -Jukka Rahkonen- > > > > > > > > > > > > -----Alkuperäinen viesti----- > > > Lähettäjä: mapserver-users [mailto:mapserver-users- > > [email protected]] Puolesta Eichner, Andreas - SID > > > Lähetetty: 18. lokakuuta 2017 9:57 > > > Vastaanottaja: Erik H <[email protected]> > > > Kopio: [email protected] > > > Aihe: Re: [mapserver-users] Draw roads WITHOUT anti-aliasing > > > > > > Damn... missed attaching the images. > > > > > > > -----Ursprüngliche Nachricht----- > > > > Von: mapserver-users [mailto:mapserver-users- > > [email protected]] > > > > Im Auftrag von Eichner, Andreas - SID > > > > Gesendet: Mittwoch, 18. Oktober 2017 08:28 > > > > An: Erik H > > > > Cc: [email protected] > > > > Betreff: Re: [mapserver-users] Draw roads WITHOUT anti-aliasing > > > > > > > > Hi, > > > > > > > > I just meant that it seems to be pretty easy to implement aliased > > > > rendering with AGG. > > > > Simply changing the typedef in line 91 of mapagg.cpp from > > > > > > > > typedef mapserver::renderer_scanline_aa_solid<renderer_base> > > > > renderer_scanline; > > > > > > > > to > > > > > > > > typedef mapserver::renderer_scanline_bin_solid<renderer_base> > > > > renderer_scanline; > > > > > > > > turns of anti-aliased rendering. I've attached the output of > > "shp2img > > > > -m line_simple.map" from the msautotests. > > > > An additional member in class AGG2Renderer for the aliased > > rasterizer > > > > and conditionally passing one or the other to render_scanlines() > > > > depending on some value of strokeStyleObj might be enough. > > > > > > > > Regards > > > > > > > > > -----Ursprüngliche Nachricht----- > > > > > Von: Erik H [mailto:[email protected]] > > > > > Gesendet: Dienstag, 17. Oktober 2017 17:34 > > > > > An: Eichner, Andreas - SID > > > > > Cc: Richard Greenwood; [email protected] > > > > > Betreff: Re: [mapserver-users] Draw roads WITHOUT anti-aliasing > > > > > > > > > > As for Andreas' remark about 'simply the use of another scanline > > > > > rasterizer.' - I'm sorry but I'm not much of a C++ developer. If I > > > > have > > > > > to do rasterizing, I'd skip MapServer altogether and generate the > > > > > PNG > > > > in > > > > > Java. > > > > > > > > > _______________________________________________ > > > > mapserver-users mailing list > > > > [email protected] > > > > https://lists.osgeo.org/mailman/listinfo/mapserver-users > > > _______________________________________________ > > > mapserver-users mailing list > > > [email protected] > > > https://lists.osgeo.org/mailman/listinfo/mapserver-users > > > > > > > > > > > > > > > > -- > > > > > _______________________________________________ > mapserver-users mailing list > [email protected] > https://lists.osgeo.org/mailman/listinfo/mapserver-users >
_______________________________________________ mapserver-users mailing list [email protected] https://lists.osgeo.org/mailman/listinfo/mapserver-users
