Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/exports/ReferenceCurveGenerator.java @ 8856:5e38e2924c07 3.2.x
Fix code style.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Thu, 18 Jan 2018 20:12:01 +0100 |
parents | e4606eae8ea5 |
children | 1cc7653ca84f 0a5239a1e46e |
rev | line source |
---|---|
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
2 * Software engineering by Intevation GmbH |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
3 * |
5994
af13ceeba52a
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5864
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
5994
af13ceeba52a
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5864
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
7 */ |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
8 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4433
diff
changeset
|
9 package org.dive4elements.river.exports; |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
10 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4433
diff
changeset
|
11 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4433
diff
changeset
|
12 import org.dive4elements.river.artifacts.model.FacetTypes; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4433
diff
changeset
|
13 import org.dive4elements.river.artifacts.model.WW; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4433
diff
changeset
|
14 import org.dive4elements.river.artifacts.model.WW.ApplyFunctionIterator; |
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4433
diff
changeset
|
15 import org.dive4elements.river.artifacts.model.WWAxisTypes; |
5864
f2e46a668fe6
River artifacts: Renamed FLYSAnnotation to RiverAnnotation.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
16 import org.dive4elements.river.jfree.RiverAnnotation; |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4433
diff
changeset
|
17 import org.dive4elements.river.jfree.StyledXYSeries; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
18 import org.dive4elements.river.themes.ThemeDocument; |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4433
diff
changeset
|
19 import org.dive4elements.river.utils.Formatter; |
2245
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
20 |
3409
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
21 import java.awt.geom.Point2D; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
22 |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
23 import org.apache.log4j.Logger; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
24 import org.jfree.chart.axis.NumberAxis; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
25 import org.jfree.chart.axis.NumberTickUnit; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
26 import org.jfree.chart.axis.TickUnits; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
27 import org.jfree.chart.axis.ValueAxis; |
97ad960f5579
Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
28 import org.jfree.data.xy.XYSeries; |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
29 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
30 /** |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
31 * An OutGenerator that generates reference curves. |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
32 */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
33 public class ReferenceCurveGenerator |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
34 extends XYChartGenerator |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
35 implements FacetTypes |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
36 { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
37 public static enum YAXIS { |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
38 W(0); |
2266
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
39 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
40 public int idx; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
41 private YAXIS(int c) { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
42 idx = c; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
43 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
44 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
45 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
46 /** House log. */ |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
47 private static Logger log = |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
48 Logger.getLogger(ReferenceCurveGenerator.class); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
49 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
50 public static final String I18N_CHART_TITLE = |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
51 "chart.reference.curve.title"; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
52 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
53 public static final String I18N_CHART_SUBTITLE = |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
54 "chart.reference.curve.subtitle"; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
55 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
56 public static final String I18N_X_AXIS_IN_CM = |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
57 "chart.reference.curve.x.axis.in.cm"; |
2263
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
58 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
59 public static final String I18N_X_AXIS_IN_M = |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
60 "chart.reference.curve.x.axis.in.m"; |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
61 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
62 public static final String I18N_Y_AXIS_IN_CM = |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
63 "chart.reference.curve.y.axis.in.cm"; |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
64 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
65 public static final String I18N_Y_AXIS_IN_M = |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
66 "chart.reference.curve.y.axis.in.m"; |
2266
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
67 |
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
68 public static final String I18N_CHART_TITLE_DEFAULT = |
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
69 "Bezugslinie"; |
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
70 |
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
71 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
72 public ReferenceCurveGenerator() { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
73 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
74 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
75 /** |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
76 * Create Axis for given index. |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
77 * @return axis with according internationalized label. |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
78 */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
79 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
80 protected NumberAxis createYAxis(int index) { |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
81 NumberAxis axis = super.createYAxis(index); |
2323
6bbb8295fd64
Fixed problems with incluing zeros in reference curves.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2303
diff
changeset
|
82 axis.setAutoRangeIncludesZero(false); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
83 return axis; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
84 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
85 |
2263
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
86 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
87 /** Get default chart title. */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
88 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
89 protected String getDefaultChartTitle() { |
2263
bdd032bfd978
Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2256
diff
changeset
|
90 return msg(I18N_CHART_TITLE, I18N_CHART_TITLE_DEFAULT); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
91 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
92 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
93 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
94 protected String getDefaultChartSubtitle() { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
95 Object[] args = new Object[] { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
96 getRiverName(), |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
97 }; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
98 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
99 return msg(I18N_CHART_SUBTITLE, "", args); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
100 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
101 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
102 |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
103 /** True if axis is in cm (because at gauge). */ |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
104 protected boolean getInCm(int index) { |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
105 Object obj = context.getContextValue("reference.curve.axis.scale"); |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
106 return obj instanceof WWAxisTypes && ((WWAxisTypes)obj).getInCm(index); |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
107 } |
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
108 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
109 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
110 /** Get Label for X-axis (W). */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
111 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
112 protected String getDefaultXAxisLabel() { |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
113 return msg(getInCm(0) ? I18N_X_AXIS_IN_CM : I18N_X_AXIS_IN_M); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
114 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
115 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
116 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
117 /** |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
118 * Get Label for primary and other Y Axes. |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
119 * @param index Axis-Index (0-based). |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
120 */ |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
121 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
122 protected String getDefaultYAxisLabel(int index) { |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
123 return msg(getInCm(1) ? I18N_Y_AXIS_IN_CM : I18N_Y_AXIS_IN_M); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
124 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
125 |
2408
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
126 protected String facetName() { |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
127 return REFERENCE_CURVE; |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
128 } |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
129 |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
130 |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
131 /** |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
132 * Called for each facet/them in the out mapped to this generator. |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
133 * @param artifactFacet artifact and facet for this theme. |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
134 * @param theme styling info. |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
135 * @param visible Whether or not the theme is visible. |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
136 */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
137 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
138 public void doOut( |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
139 ArtifactAndFacet artifactFacet, |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
140 ThemeDocument theme, |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
141 boolean visible |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
142 ) { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
143 String name = artifactFacet.getFacetName(); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
144 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
145 log.debug("ReferenceCurveGenerator.doOut: " + name); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
146 |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
147 if (name == null || name.length() == 0) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
148 log.error("No facet given. Cannot create dataset."); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
149 return; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
150 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
151 |
2408
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
152 if (name.equals(facetName())) { |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
153 doReferenceOut(artifactFacet.getData(context), theme, visible); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
154 } |
2299
094b4abde10e
fix flys/issue474 (manual points in reference curves).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2278
diff
changeset
|
155 else if (FacetTypes.IS.MANUALPOINTS(name)) { |
2325
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
156 doPoints( |
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
157 artifactFacet.getData(context), |
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
158 artifactFacet, |
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
159 theme, |
1fcaeced48f2
#485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
2323
diff
changeset
|
160 visible, |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
161 YAXIS.W.idx); |
2299
094b4abde10e
fix flys/issue474 (manual points in reference curves).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2278
diff
changeset
|
162 } |
2758
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
163 else if (name.equals(RELATIVE_POINT)) { |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
164 doPointOut( |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
165 (Point2D) artifactFacet.getData(context), |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
166 artifactFacet, |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
167 theme, |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
168 visible); |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
169 } |
2769
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
170 else if (name.equals(MAINVALUES_W)) { |
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
171 doAnnotations( |
8856 | 172 ((RiverAnnotation)artifactFacet.getData(context)) |
173 .flipStickyAxis(), | |
2769
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
174 artifactFacet, |
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
175 theme, |
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
176 visible); |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2769
diff
changeset
|
177 |
2769
de60d1dfdcdf
Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2758
diff
changeset
|
178 } |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
179 else { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
180 log.warn("Unknown facet name: " + name); |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
181 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
182 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
183 |
2408
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
184 protected boolean doNormalize() { |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
185 return false; |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
186 } |
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
187 |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
188 |
2266
c9a40e3fdf16
Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2263
diff
changeset
|
189 /** Register DataSeries with (maybe transformed) points. */ |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
190 public void doReferenceOut( |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
191 Object data, |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
192 ThemeDocument theme, |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
193 boolean visible |
2245
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
194 ) { |
2256
dd93a8e1377a
First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2253
diff
changeset
|
195 WW ww = (WW)data; |
dd93a8e1377a
First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2253
diff
changeset
|
196 |
2278
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
197 Object obj = context.getContextValue("reference.curve.axis.scale"); |
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
198 |
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
199 WWAxisTypes wwat = obj instanceof WWAxisTypes |
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
200 ? (WWAxisTypes)obj |
08bb95e1fc41
"Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2266
diff
changeset
|
201 : new WWAxisTypes(ww); |
2256
dd93a8e1377a
First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2253
diff
changeset
|
202 |
2408
8e2ae8813a06
'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2407
diff
changeset
|
203 ApplyFunctionIterator iter = wwat.transform(ww, doNormalize()); |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
204 |
2253
707b47d8c554
Dont sort the data series in reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2251
diff
changeset
|
205 XYSeries series = new StyledXYSeries( |
2256
dd93a8e1377a
First steps to serve the data in cm if we are are gauges only.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2253
diff
changeset
|
206 ww.getName(), false, theme); |
2245
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
207 |
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
208 double [] values = new double[2]; |
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
209 |
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
210 while (iter.hasNext()) { |
16598bd04f70
Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2229
diff
changeset
|
211 iter.next(values); |
2253
707b47d8c554
Dont sort the data series in reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2251
diff
changeset
|
212 series.add(values[0], values[1], false); |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
213 } |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
214 |
2407
dce0cc856357
'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2325
diff
changeset
|
215 addAxisSeries(series, YAXIS.W.idx, visible); |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
216 } |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
217 |
2758
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
218 // TODO resolve duplicate in DurationCurveGenerator |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
219 protected void doPointOut( |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
220 Point2D point, |
2758
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
221 ArtifactAndFacet aandf, |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
222 ThemeDocument theme, |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
223 boolean visible |
2758
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
224 ){ |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
225 log.debug("ReferenceCurveGenerator.doPointOut"); |
2758
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
226 |
8856 | 227 XYSeries series = |
228 new StyledXYSeries(aandf.getFacetDescription(), theme); | |
2758
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
229 |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
230 series.add(point.getX(), point.getY()); |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
231 |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
232 addAxisSeries(series, YAXIS.W.idx, visible); |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
233 } |
b05faaa9099b
Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2603
diff
changeset
|
234 |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
235 |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
236 /** Set the tick units for given axis. */ |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
237 protected void setAxisTickUnit(double tick, ValueAxis axis) { |
2603
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
238 TickUnits units = new TickUnits(); |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
239 units.add(new NumberTickUnit(tick, Formatter.getWaterlevelW(context))); |
2603
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
240 axis.setStandardTickUnits(units); |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
241 axis.setAutoTickUnitSelection(true); |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
242 } |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
243 |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
244 @Override |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
245 protected void localizeDomainAxis(ValueAxis domainAxis) { |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
246 super.localizeDomainAxis(domainAxis); |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
247 if (getInCm(0)) { |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
248 setAxisTickUnit(100d, domainAxis); |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
249 } |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
250 else { |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
251 setAxisTickUnit(1d, domainAxis); |
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
252 } |
2603
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
253 } |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
254 |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
255 |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
256 @Override |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
257 protected void localizeRangeAxis(ValueAxis rangeAxis) { |
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
258 super.localizeRangeAxis(rangeAxis); |
3567
572384206fe0
Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
3409
diff
changeset
|
259 setAxisTickUnit(1d, rangeAxis); |
2603
664f97b6d48f
Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
2408
diff
changeset
|
260 } |
2229
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
261 |
9dc81827b187
Add some fake 'input' data for reference curve. plot references curves from input km to input km +2.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2218
diff
changeset
|
262 /** Get Walker to iterate over all axes. */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
263 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
264 protected YAxisWalker getYAxisWalker() { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
265 return new YAxisWalker() { |
2246
99ef93ce18bd
Doc added and fix getAxisWalker-issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2245
diff
changeset
|
266 /** Get number of items. */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
267 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
268 public int length() { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
269 return YAXIS.values().length; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
270 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
271 |
2246
99ef93ce18bd
Doc added and fix getAxisWalker-issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
2245
diff
changeset
|
272 /** Get identifier for this index. */ |
2218
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
273 @Override |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
274 public String getId(int idx) { |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
275 YAXIS[] yaxes = YAXIS.values(); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
276 return yaxes[idx].toString(); |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
277 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
278 }; |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
279 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
280 } |
39933df6d0fe
Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
281 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |