annotate flys-artifacts/src/main/java/de/intevation/flys/exports/ReferenceCurveGenerator.java @ 3409:97ad960f5579

Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s) flys-artifacts/trunk@5062 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Christian Lins <christian.lins@intevation.de>
date Thu, 19 Jul 2012 12:59:56 +0000
parents 5642a83420f2
children 572384206fe0
rev   line source
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.exports;
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
2
2263
bdd032bfd978 Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
3 import de.intevation.artifactdatabase.state.ArtifactAndFacet;
bdd032bfd978 Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
4 import de.intevation.flys.artifacts.model.FacetTypes;
bdd032bfd978 Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
5 import de.intevation.flys.artifacts.model.WW;
bdd032bfd978 Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
6 import de.intevation.flys.artifacts.model.WW.ApplyFunctionIterator;
bdd032bfd978 Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
7 import de.intevation.flys.artifacts.model.WWAxisTypes;
3409
97ad960f5579 Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
8 import de.intevation.flys.jfree.FLYSAnnotation;
2263
bdd032bfd978 Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
9 import de.intevation.flys.jfree.StyledXYSeries;
3409
97ad960f5579 Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
10 import de.intevation.flys.utils.Formatter;
2245
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
11
3409
97ad960f5579 Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
12 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
13
97ad960f5579 Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
14 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
15 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
16 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
17 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
18 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
19 import org.jfree.data.xy.XYSeries;
97ad960f5579 Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
20 import org.w3c.dom.Document;
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
21
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
22 /**
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
23 * An OutGenerator that generates reference curves.
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
24 */
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
25 public class ReferenceCurveGenerator
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
26 extends XYChartGenerator
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
27 implements FacetTypes
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
28 {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
29 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
30 W(0);
2266
c9a40e3fdf16 Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2263
diff changeset
31
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
32 public int idx;
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
33 private YAXIS(int c) {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
34 idx = c;
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
35 }
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
2266
c9a40e3fdf16 Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2263
diff changeset
38 /** House logger. */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
39 private static Logger logger =
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
40 Logger.getLogger(ReferenceCurveGenerator.class);
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
41
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
42 public static final String I18N_CHART_TITLE =
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
43 "chart.reference.curve.title";
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 public static final String I18N_CHART_SUBTITLE =
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
46 "chart.reference.curve.subtitle";
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
47
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
48 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
49 "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
50
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
51 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
52 "chart.reference.curve.x.axis.in.m";
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
53
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
54 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
55 "chart.reference.curve.y.axis.in.cm";
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
56
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
57 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
58 "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
59
c9a40e3fdf16 Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2263
diff changeset
60 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
61 "Bezugslinie";
c9a40e3fdf16 Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2263
diff changeset
62
c9a40e3fdf16 Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2263
diff changeset
63
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
64 public ReferenceCurveGenerator() {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
65 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
66
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
67 /**
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
68 * Create Axis for given index.
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
69 * @return axis with according internationalized label.
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
70 */
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
71 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
72 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
73 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
74 axis.setAutoRangeIncludesZero(false);
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
75 return axis;
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
76 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
77
2263
bdd032bfd978 Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
78
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
79 /** Get default chart title. */
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
80 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
81 protected String getDefaultChartTitle() {
2263
bdd032bfd978 Minor i18n for reference curve chart added.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2256
diff changeset
82 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
83 }
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 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
86 protected String getDefaultChartSubtitle() {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
87 Object[] args = new Object[] {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
88 getRiverName(),
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
89 };
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
90
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
91 return msg(I18N_CHART_SUBTITLE, "", args);
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
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
94
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
95 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
96 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
97 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
98 }
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
99
2218
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 /** Get Label for X-axis (W). */
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
102 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
103 protected String getDefaultXAxisLabel() {
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
104 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
105 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
106
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
107
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
108 /**
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
109 * Get Label for primary and other Y Axes.
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
110 * @param index Axis-Index (0-based).
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
111 */
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
112 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
113 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
114 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
115 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
116
2408
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
117 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
118 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
119 }
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
120
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
121
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
122 /**
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
123 * 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
124 * @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
125 * @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
126 * @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
127 */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
128 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
129 public void doOut(
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
130 ArtifactAndFacet artifactFacet,
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
131 Document theme,
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
132 boolean visible
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
133 ) {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
134 String name = artifactFacet.getFacetName();
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
135
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
136 logger.debug("ReferenceCurveGenerator.doOut: " + name);
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
137
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
138 if (name == null || name.length() == 0) {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
139 logger.error("No facet given. Cannot create dataset.");
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
140 return;
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
141 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
142
2408
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
143 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
144 doReferenceOut(artifactFacet.getData(context), theme, visible);
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
145 }
2299
094b4abde10e fix flys/issue474 (manual points in reference curves).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2278
diff changeset
146 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
147 doPoints(
1fcaeced48f2 #485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2323
diff changeset
148 artifactFacet.getData(context),
1fcaeced48f2 #485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2323
diff changeset
149 artifactFacet,
1fcaeced48f2 #485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2323
diff changeset
150 theme,
1fcaeced48f2 #485 Fixed broken renaming of chart themes.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2323
diff changeset
151 visible,
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
152 YAXIS.W.idx);
2299
094b4abde10e fix flys/issue474 (manual points in reference curves).
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2278
diff changeset
153 }
2758
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
154 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
155 doPointOut(
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
156 (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
157 artifactFacet,
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
158 theme,
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
159 visible);
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
160 }
2769
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
161 else if (name.equals(MAINVALUES_W)) {
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
162 doAnnotations(
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
163 ((FLYSAnnotation) artifactFacet.getData(context)).flipStickyAxis(),
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
164 artifactFacet,
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
165 theme,
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
166 visible);
3076
5642a83420f2 FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2769
diff changeset
167
2769
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
168 }
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
169 else {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
170 logger.warn("Unknown facet name: " + name);
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
171 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
172 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
173
2408
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
174 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
175 return false;
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
176 }
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
177
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
178
2266
c9a40e3fdf16 Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2263
diff changeset
179 /** 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
180 public void doReferenceOut(
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
181 Object data,
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
182 Document 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
183 boolean visible
2245
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
184 ) {
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
185 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
186
2278
08bb95e1fc41 "Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2266
diff changeset
187 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
188
08bb95e1fc41 "Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2266
diff changeset
189 WWAxisTypes wwat = obj instanceof WWAxisTypes
08bb95e1fc41 "Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2266
diff changeset
190 ? (WWAxisTypes)obj
08bb95e1fc41 "Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2266
diff changeset
191 : 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
192
2408
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
193 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
194
2253
707b47d8c554 Dont sort the data series in reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2251
diff changeset
195 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
196 ww.getName(), false, theme);
2245
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
197
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
198 double [] values = new double[2];
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
199
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
200 while (iter.hasNext()) {
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
201 iter.next(values);
2253
707b47d8c554 Dont sort the data series in reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2251
diff changeset
202 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
203 }
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
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
205 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
206 }
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
207
2758
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
208 // 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
209 protected void doPointOut(
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
210 Point2D point,
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
211 ArtifactAndFacet aandf,
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
212 Document theme,
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
213 boolean visible
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
214 ){
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
215 logger.debug("ReferenceCurveGenerator.doPointOut");
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
216
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
217 XYSeries series = new StyledXYSeries(aandf.getFacetDescription(), theme);
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
218
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
219 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
220
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
221 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
222 }
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
223
2603
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
224 protected void setAxisTickUnit(ValueAxis axis) {
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
225 TickUnits units = new TickUnits();
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
226 units.add(new NumberTickUnit(1d, Formatter.getWaterlevelW(context)));
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
227 axis.setStandardTickUnits(units);
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
228 axis.setAutoTickUnitSelection(true);
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
229 }
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
230
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
231 @Override
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
232 protected void localizeDomainAxis(ValueAxis domainAxis) {
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
233 super.localizeDomainAxis(domainAxis);
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
234 setAxisTickUnit(domainAxis);
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
235 }
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
236
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
237
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
238 @Override
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
239 protected void localizeRangeAxis(ValueAxis rangeAxis) {
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
240 super.localizeRangeAxis(rangeAxis);
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
241 setAxisTickUnit(rangeAxis);
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
242 }
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
243
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
244 /** Get Walker to iterate over all axes. */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
245 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
246 protected YAxisWalker getYAxisWalker() {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
247 return new YAxisWalker() {
2246
99ef93ce18bd Doc added and fix getAxisWalker-issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2245
diff changeset
248 /** Get number of items. */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
249 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
250 public int length() {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
251 return YAXIS.values().length;
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
252 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
253
2246
99ef93ce18bd Doc added and fix getAxisWalker-issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2245
diff changeset
254 /** Get identifier for this index. */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
255 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
256 public String getId(int idx) {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
257 YAXIS[] yaxes = YAXIS.values();
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
258 return yaxes[idx].toString();
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
259 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
260 };
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
261 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
262 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
263 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org