comparison artifacts/src/main/java/org/dive4elements/river/exports/process/BedDiffYearProcessor.java @ 7092:6563262052ab generator-refactoring

Add DiagramGenerator doOut function
author Andre Heinecke <aheinecke@intevation.de>
date Mon, 23 Sep 2013 10:23:21 +0200
parents 253d80af5b7f
children 414794d0a50d
comparison
equal deleted inserted replaced
7091:c7d8adb91576 7092:6563262052ab
15 import org.dive4elements.artifacts.CallContext; 15 import org.dive4elements.artifacts.CallContext;
16 import org.dive4elements.river.artifacts.model.FacetTypes; 16 import org.dive4elements.river.artifacts.model.FacetTypes;
17 import org.dive4elements.river.artifacts.model.minfo.BedDiffYearResult; 17 import org.dive4elements.river.artifacts.model.minfo.BedDiffYearResult;
18 import org.dive4elements.river.exports.StyledSeriesBuilder; 18 import org.dive4elements.river.exports.StyledSeriesBuilder;
19 import org.dive4elements.river.exports.XYChartGenerator; 19 import org.dive4elements.river.exports.XYChartGenerator;
20 import org.dive4elements.river.exports.DiagramGenerator;
20 import org.dive4elements.river.jfree.StyledXYSeries; 21 import org.dive4elements.river.jfree.StyledXYSeries;
21 import org.dive4elements.river.themes.ThemeDocument; 22 import org.dive4elements.river.themes.ThemeDocument;
22 23
23 24
24 public class BedDiffYearProcessor 25 public class BedDiffYearProcessor
26 27
27 private final static Logger logger = 28 private final static Logger logger =
28 Logger.getLogger(BedDiffYearProcessor.class); 29 Logger.getLogger(BedDiffYearProcessor.class);
29 30
30 protected static double GAP_TOLERANCE = 0.101d; 31 protected static double GAP_TOLERANCE = 0.101d;
32
33 @Override
34 public void doOut(
35 DiagramGenerator generator,
36 ArtifactAndFacet bundle,
37 ThemeDocument theme,
38 boolean visible) {
39 CallContext context = generator.getCallContext();
40 Object data = bundle.getData(context);
41 if (data instanceof BedDiffYearResult) {
42 String facetType = bundle.getFacetName();
43 BedDiffYearResult bData = (BedDiffYearResult) data;
44
45 double[][] points;
46 if (BED_DIFFERENCE_YEAR_HEIGHT1.equals(facetType)) {
47 points = bData.getHeights1Data();
48 } else {
49 points = bData.getHeights2Data();
50 }
51 XYSeries series = new StyledXYSeries(bundle.getFacetDescription(), theme);
52 StyledSeriesBuilder.addPointsFactorY(series,
53 points,
54 false,
55 GAP_TOLERANCE,
56 100d);
57
58 generator.addAxisSeries(series, axisName, visible);
59
60 return;
61 }
62 logger.error("Can't process " + data.getClass().getName() + " objects");
63 }
31 64
32 @Override 65 @Override
33 public void doOut( 66 public void doOut(
34 XYChartGenerator generator, 67 XYChartGenerator generator,
35 ArtifactAndFacet bundle, 68 ArtifactAndFacet bundle,

http://dive4elements.wald.intevation.org