Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/exports/process/MiscDischargeProcessor.java @ 8472:3f505fba522f
(issue1772) Use 0.001km tolarance instead of 0.1 to find matching km.
There is no sense to use a define here. I will not write
static final double NULLPOINTNULLNULLONE=0.001 if i just want to use that
value and not any other value which may make sense in some other place.
Using hardcoded values can have its merits and makes the code easier to
read.
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Tue, 18 Nov 2014 15:24:40 +0100 |
parents | 9f9857f6c464 |
children | 5e38e2924c07 |
rev | line source |
---|---|
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
3 * |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
7 */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
8 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
9 package org.dive4elements.river.exports.process; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
10 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
11 import java.util.ArrayList; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
12 import java.util.List; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
13 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
14 import org.apache.log4j.Logger; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
15 import org.jfree.data.xy.XYSeries; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
16 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
17 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
18 import org.dive4elements.artifacts.CallContext; |
8354
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
19 import org.dive4elements.artifacts.CallMeta; |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
20 import org.dive4elements.river.artifacts.D4EArtifact; |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
21 import org.dive4elements.river.artifacts.access.RiverAccess; |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
22 import org.dive4elements.river.artifacts.model.FacetTypes; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
23 import org.dive4elements.river.artifacts.model.WQKms; |
8354
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
24 import org.dive4elements.river.artifacts.resources.Resources; |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
25 import org.dive4elements.river.exports.DiagramGenerator; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
26 import org.dive4elements.river.exports.DischargeCurveGenerator; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
27 import org.dive4elements.river.exports.StyledSeriesBuilder; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
28 import org.dive4elements.river.exports.XYChartGenerator; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
29 import org.dive4elements.river.jfree.CollisionFreeXYTextAnnotation; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
30 import org.dive4elements.river.jfree.RiverAnnotation; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
31 import org.dive4elements.river.jfree.StickyAxisAnnotation; |
8188
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
32 import org.dive4elements.river.jfree.StyledValueMarker; |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
33 import org.dive4elements.river.jfree.StyledXYSeries; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
34 import org.dive4elements.river.themes.ThemeDocument; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
35 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
36 import org.jfree.chart.annotations.XYTextAnnotation; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
37 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
38 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
39 /** Helper for data handling in discharge diagrams. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
40 public class MiscDischargeProcessor |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
41 extends DefaultProcessor implements FacetTypes { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
42 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
43 private final static Logger log = |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
44 Logger.getLogger(MiscDischargeProcessor.class); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
45 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
46 /** Station for which the diagram is shown. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
47 private double km; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
48 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
49 /** Tolerance for comparison of kilometers. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
50 public static final double KM_EPSILON = 0.001d; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
51 |
8354
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
52 private String I18N_AXIS_LABEL = "chart.discharge.curve.yaxis.label"; |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
53 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
54 /** This processor needs to be constructed with a given km. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
55 public MiscDischargeProcessor() { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
56 km = Double.NaN; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
57 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
58 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
59 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
60 public MiscDischargeProcessor(double km) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
61 this.km = km; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
62 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
63 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
64 public void doOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
65 DiagramGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
66 ArtifactAndFacet bundle, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
67 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
68 boolean visible) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
69 CallContext context = generator.getCallContext(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
70 Object data = bundle.getData(context); |
8188
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
71 if (HISTORICAL_DISCHARGE_WQ_Q.equals(bundle.getFacetName())) { |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
72 doHistoricalDischargeOutQ(generator, bundle, theme, visible); |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
73 } |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
74 else if (HISTORICAL_DISCHARGE_WQ_W.equals(bundle.getFacetName())) { |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
75 doHistoricalDischargeOutW(generator, bundle, theme, visible); |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
76 } |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
77 else if (data instanceof WQKms) { |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
78 doWQKmsPointOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
79 generator, (WQKms) data, bundle, theme, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
80 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
81 } |
8341
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
82 if (MAINVALUES_W.equals(bundle.getFacetName())) { |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
83 doYRiverAnnotationOut( |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
84 generator, (RiverAnnotation)data, theme, visible); |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
85 return; |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
86 } |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
87 else if (data instanceof RiverAnnotation) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
88 doRiverAnnotationOut( |
8341
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
89 generator, (RiverAnnotation)data, theme, visible); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
90 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
91 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
92 else if (data instanceof double[][]) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
93 doPointsOut(generator, (double[][])data, bundle, theme, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
94 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
95 else { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
96 log.error("Can't process " |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
97 + data.getClass().getName() + " objects of facet " |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
98 + bundle.getFacetName()); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
99 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
100 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
101 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
102 /** Process data, add it to plot. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
103 @Override |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
104 public void doOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
105 XYChartGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
106 ArtifactAndFacet bundle, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
107 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
108 boolean visible, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
109 int axisIndex |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
110 ) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
111 CallContext context = generator.getCallContext(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
112 Object data = bundle.getData(context); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
113 /* TODO: Remove the first case.*/ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
114 if (bundle.getFacetName().equals(STATIC_WQ)) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
115 doPointOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
116 generator, bundle, theme, visible, axisIndex); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
117 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
118 else if (data instanceof WQKms) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
119 doWQKmsPointOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
120 generator, (WQKms) data, bundle, theme, visible, axisIndex); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
121 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
122 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
123 else if (data instanceof RiverAnnotation) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
124 doRiverAnnotationOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
125 generator, (RiverAnnotation) data, bundle, theme, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
126 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
127 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
128 else if (data instanceof double[][]) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
129 doMarksOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
130 generator, (double[][]) data, bundle, theme, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
131 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
132 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
133 else { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
134 log.error("Can't process " |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
135 + data.getClass().getName() + " objects of facet " |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
136 + bundle.getFacetName()); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
137 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
138 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
139 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
140 private void doPointOut(XYChartGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
141 ArtifactAndFacet bundle, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
142 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
143 boolean visible, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
144 int axisIndex |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
145 ) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
146 XYSeries series = new StyledXYSeries(bundle.getFacetDescription(), theme); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
147 Object wq = bundle.getData(generator.getCallContext()); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
148 if (wq instanceof double[][]) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
149 double [][] data = (double [][]) wq; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
150 StyledSeriesBuilder.addPoints(series, data, true); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
151 } else if (wq instanceof WQKms) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
152 WQKms wqkms = (WQKms) wq; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
153 StyledSeriesBuilder.addPointsQW(series, (WQKms) wq); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
154 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
155 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
156 generator.addAxisSeries(series, axisIndex, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
157 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
158 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
159 /** Handle WQKms data by finding w/q values at given km. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
160 protected void doWQKmsPointOut(XYChartGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
161 WQKms wqkms, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
162 ArtifactAndFacet bundle, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
163 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
164 boolean visible, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
165 int axidx |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
166 ) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
167 log.debug("doWQKmsPointOut"); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
168 String title = bundle.getFacetDescription(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
169 XYSeries series = new StyledXYSeries( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
170 title, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
171 theme); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
172 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
173 double[] kms = wqkms.getKms(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
174 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
175 for (int i = 0 ; i< kms.length; i++) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
176 if (Math.abs(kms[i] - getKm()) <= KM_EPSILON) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
177 series.add(wqkms.getQ(i), wqkms.getW(i)); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
178 generator.addAxisSeries(series, axidx, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
179 if(visible && theme.parseShowPointLabel()) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
180 List<XYTextAnnotation> textAnnos = new ArrayList<XYTextAnnotation>(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
181 XYTextAnnotation anno = new CollisionFreeXYTextAnnotation( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
182 title, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
183 wqkms.getQ(i), |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
184 // TODO add a percentage to the extend of W axis |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
185 wqkms.getW(i)); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
186 textAnnos.add(anno); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
187 RiverAnnotation flysAnno = new RiverAnnotation(null, null, null, theme); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
188 flysAnno.setTextAnnotations(textAnnos); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
189 generator.addAnnotations(flysAnno); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
190 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
191 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
192 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
193 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
194 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
195 log.warn("No WQ found for km " + getKm()); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
196 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
197 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
198 protected void doRiverAnnotationOut(XYChartGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
199 RiverAnnotation annotations, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
200 ArtifactAndFacet bundle, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
201 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
202 boolean visible |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
203 ) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
204 if (!(generator instanceof DischargeCurveGenerator)) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
205 log.error("DischargeProcessor can only be used in " + |
8316
c086b06b81e5
Make ChartArea and thus annotations sensible for logarithmic axes (plus some minor cleanup).
"Tom Gottfried <tom@intevation.de>"
parents:
8202
diff
changeset
|
206 "DischargeCurveGenerator-classes."); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
207 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
208 } |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
209 log.debug("doRiverAnnotationOut"); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
210 DischargeCurveGenerator dGenerator = |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
211 (DischargeCurveGenerator) generator; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
212 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
213 dGenerator.translateRiverAnnotation(annotations); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
214 dGenerator.doAnnotations( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
215 annotations, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
216 bundle, theme, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
217 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
218 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
219 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
220 /** |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
221 * Put Sticky Axis Markers to Y-axis for each value. |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
222 * @param data [[-,y1],[-,y2],...] ('x'-coordinates ignored) |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
223 */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
224 protected void doMarksOut(XYChartGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
225 double[][] data, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
226 ArtifactAndFacet bundle, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
227 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
228 boolean visible |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
229 ) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
230 log.debug("doMarksOut"); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
231 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
232 if (!visible) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
233 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
234 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
235 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
236 // TODO subtract gauge null point if at gauge. |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
237 String title = bundle.getFacetDescription(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
238 List<StickyAxisAnnotation> yMarks = new ArrayList<StickyAxisAnnotation>(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
239 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
240 for (double yPos: data[1]) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
241 yMarks.add(new StickyAxisAnnotation( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
242 title, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
243 (float) yPos, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
244 StickyAxisAnnotation.SimpleAxis.Y_AXIS)); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
245 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
246 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
247 generator.doAnnotations(new RiverAnnotation(title, yMarks), |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
248 bundle, theme, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
249 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
250 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
251 /** True if this processor knows how to deal with facetType. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
252 @Override |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
253 public boolean canHandle(String facetType) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
254 return STATIC_WQKMS_W.equals(facetType) |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
255 || MAINVALUES_Q.equals(facetType) |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
256 || MAINVALUES_W.equals(facetType) |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
257 || STATIC_W_INTERPOL.equals(facetType) |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
258 || STATIC_WQ.equals(facetType) |
8188
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
259 || STATIC_WQ_ANNOTATIONS.equals(facetType) |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
260 || HISTORICAL_DISCHARGE_WQ_W.equals(facetType) |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
261 || HISTORICAL_DISCHARGE_WQ_Q.equals(facetType); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
262 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
263 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
264 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
265 /** The station of the current calculation/view. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
266 protected double getKm() { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
267 return km; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
268 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
269 |
8188
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
270 protected void doHistoricalDischargeOutQ( |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
271 DiagramGenerator generator, |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
272 ArtifactAndFacet bundle, |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
273 ThemeDocument theme, |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
274 boolean visible |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
275 ) { |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
276 double value = Double.valueOf( |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
277 bundle.getData(generator.getCallContext()).toString()); |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
278 generator.addDomainMarker(new StyledValueMarker(value, theme), visible); |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
279 } |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
280 |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
281 protected void doHistoricalDischargeOutW( |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
282 DiagramGenerator generator, |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
283 ArtifactAndFacet bundle, |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
284 ThemeDocument theme, |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
285 boolean visible |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
286 ) { |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
287 double value = Double.valueOf( |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
288 bundle.getData(generator.getCallContext()).toString()); |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
289 generator.addValueMarker(new StyledValueMarker(value, theme), visible); |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
290 } |
407c9598352f
Use processors for historical discharge curves.
Raimund Renkert <rrenkert@intevation.de>
parents:
8181
diff
changeset
|
291 |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
292 private void doPointsOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
293 DiagramGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
294 double[][] data, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
295 ArtifactAndFacet bundle, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
296 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
297 boolean visible |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
298 ) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
299 XYSeries series = new StyledXYSeries(bundle.getFacetDescription(), theme); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
300 StyledSeriesBuilder.addPoints(series, data, true); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
301 generator.addAxisSeries(series, axisName, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
302 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
303 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
304 /** Handle WQKms data by finding w/q values at given km. */ |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
305 protected void doWQKmsPointOut( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
306 DiagramGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
307 WQKms wqkms, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
308 ArtifactAndFacet bundle, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
309 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
310 boolean visible |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
311 ) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
312 log.debug("doWQKmsPointOut"); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
313 String title = bundle.getFacetDescription(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
314 XYSeries series = new StyledXYSeries( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
315 title, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
316 theme); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
317 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
318 double[] kms = wqkms.getKms(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
319 |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
320 for (int i = 0 ; i< kms.length; i++) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
321 if (Math.abs(kms[i] - getKm()) <= KM_EPSILON) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
322 series.add(wqkms.getQ(i), wqkms.getW(i)); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
323 generator.addAxisSeries(series, axisName, visible); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
324 if(visible && theme.parseShowPointLabel()) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
325 List<XYTextAnnotation> textAnnos = new ArrayList<XYTextAnnotation>(); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
326 XYTextAnnotation anno = new CollisionFreeXYTextAnnotation( |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
327 title, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
328 wqkms.getQ(i), |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
329 // TODO add a percentage to the extend of W axis |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
330 wqkms.getW(i)); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
331 textAnnos.add(anno); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
332 RiverAnnotation flysAnno = new RiverAnnotation(null, null, null, theme); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
333 flysAnno.setTextAnnotations(textAnnos); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
334 generator.addAnnotations(flysAnno); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
335 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
336 return; |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
337 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
338 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
339 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
8188
diff
changeset
|
340 log.warn("No WQ found for km " + getKm()); |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
341 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
342 |
8341
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
343 protected void doYRiverAnnotationOut(DiagramGenerator generator, |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
344 RiverAnnotation annotations, |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
345 ThemeDocument theme, |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
346 boolean visible |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
347 ) { |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
348 if (visible) { |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
349 annotations.setTheme(theme); |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
350 generator.addYAnnotation(annotations, axisName); |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
351 } |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
352 } |
130160b8d245
Introduce annotations, which know to which axis they belong.
Tom Gottfried <tom@intevation.de>
parents:
8331
diff
changeset
|
353 |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
354 protected void doRiverAnnotationOut(DiagramGenerator generator, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
355 RiverAnnotation annotations, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
356 ThemeDocument theme, |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
357 boolean visible |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
358 ) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
359 if (visible) { |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
360 annotations.setTheme(theme); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
361 generator.addAnnotations(annotations); |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
362 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
363 } |
8354
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
364 |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
365 @Override |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
366 public String getAxisLabel(DiagramGenerator generator) { |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
367 CallMeta meta = generator.getCallContext().getMeta(); |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
368 RiverAccess access = new RiverAccess((D4EArtifact)generator.getMaster()); |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
369 String unit = access.getRiver().getWstUnit().getName(); |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
370 |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
371 return Resources.getMsg( |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
372 meta, |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
373 I18N_AXIS_LABEL, |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
374 new Object[] { unit }); |
9f9857f6c464
Added y axis label to discharge processors.
Raimund Renkert <rrenkert@intevation.de>
parents:
8341
diff
changeset
|
375 } |
8181
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
376 } |
209f8a9e8a75
Added new processor to plot misc discharge data, e.g. from datacage or recommendations.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff
changeset
|
377 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |