annotate artifacts/src/main/java/org/dive4elements/river/exports/ReferenceCurveGenerator.java @ 5863:4897a58c8746

River artifacts: Added new copyright headers.
author Sascha L. Teichmann <teichmann@intevation.de>
date Sun, 28 Apr 2013 14:40:59 +0200
parents 5aa05a7a34b7
children f2e46a668fe6
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 *
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
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
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
6 * documentation coming with Dive4Elements River for details.
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;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4433
diff changeset
16 import org.dive4elements.river.jfree.FLYSAnnotation;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4433
diff changeset
17 import org.dive4elements.river.jfree.StyledXYSeries;
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4433
diff changeset
18 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
19
3409
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 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
21
97ad960f5579 Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents: 3076
diff changeset
22 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
23 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
24 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
25 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
26 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
27 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
28 import org.w3c.dom.Document;
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
2266
c9a40e3fdf16 Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2263
diff changeset
46 /** House logger. */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
47 private static Logger logger =
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,
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
140 Document 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
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
145 logger.debug("ReferenceCurveGenerator.doOut: " + name);
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) {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
148 logger.error("No facet given. Cannot create dataset.");
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(
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
172 ((FLYSAnnotation) artifactFacet.getData(context)).flipStickyAxis(),
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
173 artifactFacet,
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
174 theme,
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
175 visible);
3076
5642a83420f2 FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2769
diff changeset
176
2769
de60d1dfdcdf Let Generators handle slightly more types.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2758
diff changeset
177 }
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
178 else {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
179 logger.warn("Unknown facet name: " + name);
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
180 }
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
2408
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
183 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
184 return false;
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
185 }
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
186
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
187
2266
c9a40e3fdf16 Added a second Y axis for ReferenceCurveGenerator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2263
diff changeset
188 /** 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
189 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
190 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
191 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
192 boolean visible
2245
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
193 ) {
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
194 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
195
2278
08bb95e1fc41 "Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2266
diff changeset
196 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
197
08bb95e1fc41 "Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2266
diff changeset
198 WWAxisTypes wwat = obj instanceof WWAxisTypes
08bb95e1fc41 "Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2266
diff changeset
199 ? (WWAxisTypes)obj
08bb95e1fc41 "Bezugslinienverfahren": Fetch axis types from call context.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2266
diff changeset
200 : 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
201
2408
8e2ae8813a06 'Bezugslinien': normalized reference curve is now derived from reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2407
diff changeset
202 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
203
2253
707b47d8c554 Dont sort the data series in reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2251
diff changeset
204 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
205 ww.getName(), false, theme);
2245
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
206
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
207 double [] values = new double[2];
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
208
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
209 while (iter.hasNext()) {
16598bd04f70 Use the ApplyFunctionIterator in reference curve generation.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2229
diff changeset
210 iter.next(values);
2253
707b47d8c554 Dont sort the data series in reference curve.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2251
diff changeset
211 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
212 }
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
2407
dce0cc856357 'Bezugslinien': Added axis labels matching the displayed data.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2325
diff changeset
214 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
215 }
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
2758
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
217 // 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
218 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
219 Point2D point,
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
220 ArtifactAndFacet aandf,
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
221 Document theme,
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
222 boolean visible
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
223 ){
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
224 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
225
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
226 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
227
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
228 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
229
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
230 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
231 }
b05faaa9099b Create points for ref.curve in facet, handle these in generator.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2603
diff changeset
232
3567
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
233
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
234 /** Set the tick units for given axis. */
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
235 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
236 TickUnits units = new TickUnits();
3567
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
237 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
238 axis.setStandardTickUnits(units);
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
239 axis.setAutoTickUnitSelection(true);
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
240 }
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
241
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
242 @Override
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
243 protected void localizeDomainAxis(ValueAxis domainAxis) {
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
244 super.localizeDomainAxis(domainAxis);
3567
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
245 if (getInCm(0)) {
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
246 setAxisTickUnit(100d, domainAxis);
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
247 }
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
248 else {
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
249 setAxisTickUnit(1d, domainAxis);
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
250 }
2603
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
251 }
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
252
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 @Override
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
255 protected void localizeRangeAxis(ValueAxis rangeAxis) {
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
256 super.localizeRangeAxis(rangeAxis);
3567
572384206fe0 Fix issue795.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 3409
diff changeset
257 setAxisTickUnit(1d, rangeAxis);
2603
664f97b6d48f Applied patch from flys/issue639
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 2408
diff changeset
258 }
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
259
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
260 /** Get Walker to iterate over all axes. */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
261 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
262 protected YAxisWalker getYAxisWalker() {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
263 return new YAxisWalker() {
2246
99ef93ce18bd Doc added and fix getAxisWalker-issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2245
diff changeset
264 /** Get number of items. */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
265 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
266 public int length() {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
267 return YAXIS.values().length;
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
268 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
269
2246
99ef93ce18bd Doc added and fix getAxisWalker-issue.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents: 2245
diff changeset
270 /** Get identifier for this index. */
2218
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
271 @Override
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
272 public String getId(int idx) {
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
273 YAXIS[] yaxes = YAXIS.values();
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
274 return yaxes[idx].toString();
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
275 }
39933df6d0fe Addes stub for ReferenceCurve*Generator
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff changeset
276 };
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 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org