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