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
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
172 ((RiverAnnotation)artifactFacet.getData(context))
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
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
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
227 XYSeries series =
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
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 :

http://dive4elements.wald.intevation.org