Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/exports/process/DischargeProcessor.java @ 6905:1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Thu, 22 Aug 2013 23:31:38 +0200 |
parents | ebe7dfffacc4 |
children | 695a5f6599b4 |
comparison
equal
deleted
inserted
replaced
6904:d710bd3df387 | 6905:1b35b2ddfc28 |
---|---|
11 import java.util.ArrayList; | 11 import java.util.ArrayList; |
12 import java.util.List; | 12 import java.util.List; |
13 | 13 |
14 import org.apache.log4j.Logger; | 14 import org.apache.log4j.Logger; |
15 import org.jfree.data.xy.XYSeries; | 15 import org.jfree.data.xy.XYSeries; |
16 import org.w3c.dom.Document; | |
17 | 16 |
18 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; | 17 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; |
19 import org.dive4elements.artifacts.CallContext; | 18 import org.dive4elements.artifacts.CallContext; |
20 import org.dive4elements.river.artifacts.model.FacetTypes; | 19 import org.dive4elements.river.artifacts.model.FacetTypes; |
21 import org.dive4elements.river.artifacts.model.WQKms; | 20 import org.dive4elements.river.artifacts.model.WQKms; |
22 import org.dive4elements.river.exports.DischargeCurveGenerator; | 21 import org.dive4elements.river.exports.DischargeCurveGenerator; |
23 import org.dive4elements.river.exports.StyledSeriesBuilder; | |
24 import org.dive4elements.river.exports.XYChartGenerator; | 22 import org.dive4elements.river.exports.XYChartGenerator; |
25 import org.dive4elements.river.jfree.CollisionFreeXYTextAnnotation; | 23 import org.dive4elements.river.jfree.CollisionFreeXYTextAnnotation; |
26 import org.dive4elements.river.jfree.RiverAnnotation; | 24 import org.dive4elements.river.jfree.RiverAnnotation; |
27 import org.dive4elements.river.jfree.StyledXYSeries; | 25 import org.dive4elements.river.jfree.StyledXYSeries; |
28 import org.dive4elements.river.utils.ThemeUtil; | 26 import org.dive4elements.river.themes.ThemeDocument; |
29 | 27 |
30 import org.jfree.chart.annotations.XYTextAnnotation; | 28 import org.jfree.chart.annotations.XYTextAnnotation; |
31 | 29 |
32 | 30 |
33 /** Helper for data handling in discharge diagrams. */ | 31 /** Helper for data handling in discharge diagrams. */ |
58 /** Process data, add it to plot. */ | 56 /** Process data, add it to plot. */ |
59 @Override | 57 @Override |
60 public void doOut( | 58 public void doOut( |
61 XYChartGenerator generator, | 59 XYChartGenerator generator, |
62 ArtifactAndFacet aandf, | 60 ArtifactAndFacet aandf, |
63 Document theme, | 61 ThemeDocument theme, |
64 boolean visible, | 62 boolean visible, |
65 int index | 63 int index |
66 ) { | 64 ) { |
67 CallContext context = generator.getCallContext(); | 65 CallContext context = generator.getCallContext(); |
68 Object data = aandf.getData(context); | 66 Object data = aandf.getData(context); |
110 | 108 |
111 /** Handle WQKms data by finding w/q values at given km. */ | 109 /** Handle WQKms data by finding w/q values at given km. */ |
112 protected void doWQKmsPointOut(XYChartGenerator generator, | 110 protected void doWQKmsPointOut(XYChartGenerator generator, |
113 WQKms wqkms, | 111 WQKms wqkms, |
114 ArtifactAndFacet aandf, | 112 ArtifactAndFacet aandf, |
115 Document theme, | 113 ThemeDocument theme, |
116 boolean visible, | 114 boolean visible, |
117 int axidx | 115 int axidx |
118 ) { | 116 ) { |
119 String title = aandf.getFacetDescription(); | 117 String title = aandf.getFacetDescription(); |
120 XYSeries series = new StyledXYSeries( | 118 XYSeries series = new StyledXYSeries( |
125 | 123 |
126 for (int i = 0 ; i< kms.length; i++) { | 124 for (int i = 0 ; i< kms.length; i++) { |
127 if (Math.abs(kms[i] - getKm()) <= KM_EPSILON) { | 125 if (Math.abs(kms[i] - getKm()) <= KM_EPSILON) { |
128 series.add(wqkms.getQ(i), wqkms.getW(i)); | 126 series.add(wqkms.getQ(i), wqkms.getW(i)); |
129 generator.addAxisSeries(series, axidx, visible); | 127 generator.addAxisSeries(series, axidx, visible); |
130 if(visible && ThemeUtil.parseShowPointLabel(theme)) { | 128 if(visible && theme.parseShowPointLabel()) { |
131 List<XYTextAnnotation> textAnnos = new ArrayList<XYTextAnnotation>(); | 129 List<XYTextAnnotation> textAnnos = new ArrayList<XYTextAnnotation>(); |
132 XYTextAnnotation anno = new CollisionFreeXYTextAnnotation( | 130 XYTextAnnotation anno = new CollisionFreeXYTextAnnotation( |
133 title, | 131 title, |
134 wqkms.getQ(i), | 132 wqkms.getQ(i), |
135 // TODO add a percentage to the extend of W axis | 133 // TODO add a percentage to the extend of W axis |