comparison artifacts/src/main/java/org/dive4elements/river/exports/extreme/ExtremeWQCurveGenerator.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 6791411ed1fc
children a56fe3bc6700
comparison
equal deleted inserted replaced
6904:d710bd3df387 6905:1b35b2ddfc28
15 import org.jfree.chart.plot.Marker; 15 import org.jfree.chart.plot.Marker;
16 import org.jfree.chart.plot.ValueMarker; 16 import org.jfree.chart.plot.ValueMarker;
17 import org.jfree.chart.plot.XYPlot; 17 import org.jfree.chart.plot.XYPlot;
18 import org.jfree.chart.title.TextTitle; 18 import org.jfree.chart.title.TextTitle;
19 import org.jfree.data.xy.XYSeries; 19 import org.jfree.data.xy.XYSeries;
20 import org.w3c.dom.Document;
21 20
22 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; 21 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet;
23 import org.dive4elements.artifactdatabase.state.Facet; 22 import org.dive4elements.artifactdatabase.state.Facet;
24 import org.dive4elements.river.artifacts.access.FixAnalysisAccess; 23 import org.dive4elements.river.artifacts.access.FixAnalysisAccess;
25 import org.dive4elements.river.artifacts.D4EArtifact; 24 import org.dive4elements.river.artifacts.D4EArtifact;
31 import org.dive4elements.river.exports.fixings.FixWQCurveGenerator; 30 import org.dive4elements.river.exports.fixings.FixWQCurveGenerator;
32 import org.dive4elements.river.exports.StyledSeriesBuilder; 31 import org.dive4elements.river.exports.StyledSeriesBuilder;
33 import org.dive4elements.river.jfree.JFreeUtil; 32 import org.dive4elements.river.jfree.JFreeUtil;
34 import org.dive4elements.river.jfree.StyledXYSeries; 33 import org.dive4elements.river.jfree.StyledXYSeries;
35 34
35 import org.dive4elements.river.themes.ThemeDocument;
36 import org.dive4elements.river.utils.RiverUtils; 36 import org.dive4elements.river.utils.RiverUtils;
37 import org.dive4elements.river.utils.ThemeUtil;
38 37
39 38
40 /** 39 /**
41 * Generator for WQ fixing charts. 40 * Generator for WQ fixing charts.
42 * @author <a href="mailto:christian.lins@intevation.de">Christian Lins</a> 41 * @author <a href="mailto:christian.lins@intevation.de">Christian Lins</a>
74 "W [NN + m]"; 73 "W [NN + m]";
75 74
76 75
77 /** First, ask parent to add data, then handle extreme_wq_curve(_base) data.*/ 76 /** First, ask parent to add data, then handle extreme_wq_curve(_base) data.*/
78 @Override 77 @Override
79 public boolean prepareChartData(ArtifactAndFacet aaf, Document theme, boolean visible) { 78 public boolean prepareChartData(ArtifactAndFacet aaf, ThemeDocument theme, boolean visible) {
80 if (super.prepareChartData(aaf, theme, visible)) { 79 if (super.prepareChartData(aaf, theme, visible)) {
81 return true; 80 return true;
82 } 81 }
83 82
84 String name = aaf.getFacetName(); 83 String name = aaf.getFacetName();
102 plot.setRangeAxis(1, createYAxis(YAXIS.W.idx)); 101 plot.setRangeAxis(1, createYAxis(YAXIS.W.idx));
103 } 102 }
104 } 103 }
105 104
106 /** Do Extreme Curve nonextrapolated points out. */ 105 /** Do Extreme Curve nonextrapolated points out. */
107 protected void doExtremeCurveBaseOut(ArtifactAndFacet aaf, Document theme, boolean visible) { 106 protected void doExtremeCurveBaseOut(ArtifactAndFacet aaf, ThemeDocument theme, boolean visible) {
108 logger.debug("doExtremeCurveBaseOut"); 107 logger.debug("doExtremeCurveBaseOut");
109 ExtremeCurveFacet facet = (ExtremeCurveFacet) aaf.getFacet(); 108 ExtremeCurveFacet facet = (ExtremeCurveFacet) aaf.getFacet();
110 Curve curve = (Curve) facet.getData(aaf.getArtifact(), context); 109 Curve curve = (Curve) facet.getData(aaf.getArtifact(), context);
111 if (curve == null) { 110 if (curve == null) {
112 logger.warn("doExtremeCurveBaseOut: Facet does not contain Curve"); 111 logger.warn("doExtremeCurveBaseOut: Facet does not contain Curve");
134 //addAxisSeries(qwseries, YAXIS.W.idx, visible); 133 //addAxisSeries(qwseries, YAXIS.W.idx, visible);
135 } 134 }
136 135
137 136
138 /** Do Extreme Curve out */ 137 /** Do Extreme Curve out */
139 protected void doExtremeCurveOut(ArtifactAndFacet aaf, Document theme, boolean visible) { 138 protected void doExtremeCurveOut(ArtifactAndFacet aaf, ThemeDocument theme, boolean visible) {
140 logger.debug("doExtremeCurveOut"); 139 logger.debug("doExtremeCurveOut");
141 ExtremeCurveFacet facet = (ExtremeCurveFacet) aaf.getFacet(); 140 ExtremeCurveFacet facet = (ExtremeCurveFacet) aaf.getFacet();
142 Curve curve = (Curve) facet.getData(aaf.getArtifact(), context); 141 Curve curve = (Curve) facet.getData(aaf.getArtifact(), context);
143 if (curve == null) { 142 if (curve == null) {
144 logger.warn("doExtremeCurveOut: Facet does not contain Curve"); 143 logger.warn("doExtremeCurveOut: Facet does not contain Curve");
157 500, // number of samples 156 500, // number of samples
158 0.0 , // start 157 0.0 , // start
159 maxQ); // end 158 maxQ); // end
160 159
161 // Add marker from where on its extrapolated. 160 // Add marker from where on its extrapolated.
162 if (ThemeUtil.parseShowExtraMark(theme)) { 161 if (theme.parseShowExtraMark()) {
163 double[] qs = curve.getQs(); 162 double[] qs = curve.getQs();
164 double extrapolateFrom = qs[qs.length-1]; 163 double extrapolateFrom = qs[qs.length-1];
165 164
166 Marker m = new ValueMarker(extrapolateFrom); 165 Marker m = new ValueMarker(extrapolateFrom);
167 m.setPaint(Color.black); 166 m.setPaint(Color.black);

http://dive4elements.wald.intevation.org