MapServer / MapServer-import

3 stars 2 forks source link

dynamic charting does not support AGG renderer #2159

Open tbonfort opened 12 years ago

tbonfort commented 12 years ago

Reporter: tbonfort Date: 2007/07/18 - 11:39 included patch adds support for AGG rendering of pie and bar charts.[[BR]]

this patch also refactors a few functions (moves msDrawChartLayer to mapchart.c), fixes some issues in bar graphs (namely when there are only negative values, or if the specified bounds clip the input data), and validates more thoroughly the input data from the mapfile and the shape attributes

tbonfort commented 12 years ago

Author: dmorissette Date: 2007/07/18 - 21:19 Thanks Thomas. I have committed your patch in SVN 8f0afd8ca9176670d0523fe496230771d810a5ba (r6345) but could not fully test since I am not setup to test with AGG yet.

About the rendering options supported only with AGG, I think they should be available with GD as well for consistency, even if they don't look as good. I'll still mark the bug fixed and you can submit a new patch if you decide to add them to the GD code.

tbonfort commented 12 years ago

Author: dmorissette Date: 2007/07/19 - 14:39 Thomas, values.h is not available on Windows and the latest mapchart.c didn't build there. Assefa proposed the following change to mapchart.c. Can you please confirm that it's okay?

include "map.h"

if defined(_WIN32) && !defined(CYGWIN)

include

else

include

endif

tbonfort commented 12 years ago

Author: dmorissette Date: 2007/07/19 - 14:40 OOpps... Trac screwed up the formatting of the C code in the last comment. Here is is again:

#include "map.h"
#if defined(_WIN32) && !defined(__CYGWIN__)
#include <float.h>
#else
#include <values.h>
#endif

-    float *values,shapeMaxVal=MINFLOAT,shapeMinVal=MAXFLOAT,pixperval;
+    float *values,shapeMaxVal=FLT_MIN,shapeMinVal=FLT_MAX,pixperval;
tbonfort commented 12 years ago

Date: 2007/07/19 - 14:42 I've changed this and umberto commited it this morning ... in fact there wasn't really a need for MAX_FLOAT etc...

tbonfort commented 12 years ago

Author: dmorissette Date: 2007/07/19 - 14:50 Sorry for the noise, I read the exchange between you and Umbertoo too late.

tbonfort commented 12 years ago

Author: dmorissette Date: 2007/07/19 - 20:45 Thomas, I tried your chartgd.diff patch, but it doubles the size of pie charts with GD output. Bar charts are the right size. Can you please check that?

tbonfort commented 12 years ago

Date: 2007/07/19 - 22:57 dan, yes this was the desired functionality ;)[[BR]] both agg and gd draw the same size charts, and chart_size specifies the 'radius' of the pie not its diameter (this is what changed in the last patch) as there isn't any documentation on this (yet), we can settle for any version, but you're right that specifying the diameter seems a more consistent solution I'll be sending a new patch soon

tbonfort commented 12 years ago

Date: 2007/07/19 - 23:08 uploaded new version of the patch which treats 'cart_size' as the pie's diameter instead of its radius

tbonfort commented 12 years ago

Author: dmorissette Date: 2007/07/19 - 23:11 I think I prefer the original behavior where chart_size specified the overall size (diameter) of the pie since this is more consistent with the meaning of chart_size on bar charts.

tbonfort commented 12 years ago

Author: dmorissette Date: 2007/07/23 - 16:19 Thanks Thomas. I have committed your latest patch (add rendering of outlines and offsets) in 535c62b09ea474adb86a609b9cee44a977fac257 (r6365).

Closing ticket.