Mercurial > dive4elements > river
annotate flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/FixDerivedCurveGenerator.java @ 3182:f1e09a003f78
Removed trailing whitespace.
flys-artifacts/trunk@4797 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Tue, 26 Jun 2012 10:55:39 +0000 |
parents | 88d49a0a55f0 |
children | 750e98fc8b76 |
rev | line source |
---|---|
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.exports.fixings; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
2 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
3 import de.intevation.artifactdatabase.state.ArtifactAndFacet; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
4 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
5 import de.intevation.flys.artifacts.model.FacetTypes; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
6 |
3081
26119b7b3154
Fixing output generator hacking
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
7 import de.intevation.flys.artifacts.model.fixings.FixDerivateFacet; |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
8 import de.intevation.flys.artifacts.model.fixings.FixFunction; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
9 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
10 import de.intevation.flys.exports.ChartGenerator; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
11 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
12 import de.intevation.flys.jfree.Function2DAdapter; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
13 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
14 import org.apache.log4j.Logger; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
15 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
16 import org.jfree.data.general.DatasetUtilities; |
3068
2fc9d0c65dc9
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3067
diff
changeset
|
17 |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
18 import org.jfree.data.xy.XYSeries; |
3068
2fc9d0c65dc9
Removed superfluous import.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3067
diff
changeset
|
19 |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
20 import org.w3c.dom.Document; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
21 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
22 /** |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
23 * Generator for fixation derived function curve. |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
24 * |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
25 * @author <a href="mailto:christian.lins@intevation.de">Christian Lins</a> |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
26 */ |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3068
diff
changeset
|
27 public class FixDerivedCurveGenerator |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3081
diff
changeset
|
28 extends FixChartGenerator |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
29 implements FacetTypes |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
30 { |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3068
diff
changeset
|
31 private static Logger logger = |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
32 Logger.getLogger(FixDerivedCurveGenerator.class); |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
33 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
34 public static final String I18N_CHART_TITLE = |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
35 "chart.fixings.derived.title"; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
36 |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3068
diff
changeset
|
37 public static final String I18N_CHART_SUBTITLE = |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
38 "chart.fixings.derived.subtitle"; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
39 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
40 public static final String I18N_XAXIS_LABEL = |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
41 "chart.fixings.derived.xaxis.label"; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
42 |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3068
diff
changeset
|
43 public static final String I18N_YAXIS_LABEL = |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
44 "chart.fixings.derived.yaxis.label"; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
45 |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3068
diff
changeset
|
46 public static final String I18N_CHART_TITLE_DEFAULT = |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
47 "Ableitungskurve"; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
48 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
49 public static final String I18N_XAXIS_LABEL_DEFAULT = |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
50 "Q [m\u00B3/s]"; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
51 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
52 public static final String I18N_YAXIS_LABEL_DEFAULT = |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
53 "W [NN + m]"; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
54 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
55 public static enum YAXIS { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
56 W(0), |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
57 Q(1); |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
58 public int idx; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
59 private YAXIS(int c) { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
60 idx = c; |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3068
diff
changeset
|
61 } |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
62 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
63 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
64 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
65 @Override |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
66 public void doOut(ArtifactAndFacet aaf, Document doc, boolean visible) { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
67 logger.debug("doOut"); |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
68 |
3081
26119b7b3154
Fixing output generator hacking
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
69 FixDerivateFacet facet = (FixDerivateFacet)aaf.getFacet(); |
26119b7b3154
Fixing output generator hacking
Christian Lins <christian.lins@intevation.de>
parents:
3076
diff
changeset
|
70 FixFunction func = (FixFunction)facet.getData( |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
3081
diff
changeset
|
71 aaf.getArtifact(), context); |
3091
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
72 |
3110
88d49a0a55f0
Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3108
diff
changeset
|
73 if(func != null) { |
3091
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
74 double maxQ = func.getMaxQ(); |
3110
88d49a0a55f0
Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3108
diff
changeset
|
75 |
3091
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
76 if(maxQ > 0) { |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
77 XYSeries series = DatasetUtilities.sampleFunction2DToSeries( |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
78 new Function2DAdapter(func.getFunction()), |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
79 0, // start |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
80 maxQ, // end |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
81 500, // number of samples |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
82 aaf.getFacetDescription()); |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
83 addAxisSeries(series, 0, visible); |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
84 } |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
85 } |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
86 else { |
179e38aa678d
Some fixing charts are generated now
Christian Lins <christian.lins@intevation.de>
parents:
3088
diff
changeset
|
87 logger.debug("doOut: func == null"); |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
88 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
89 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
90 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
91 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
92 @Override |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
93 protected String getDefaultChartTitle() { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
94 return msg(I18N_CHART_TITLE, I18N_CHART_TITLE_DEFAULT); |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
95 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
96 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
97 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
98 @Override |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
99 protected String getDefaultXAxisLabel() { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
100 return msg(I18N_XAXIS_LABEL, I18N_XAXIS_LABEL_DEFAULT); |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
101 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
102 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
103 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
104 @Override |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
105 protected String getDefaultYAxisLabel(int pos) { |
3076
5642a83420f2
FLYS artifacts: Removed trailing whitespace.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3068
diff
changeset
|
106 return msg(I18N_YAXIS_LABEL, I18N_YAXIS_LABEL_DEFAULT); |
3067
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
107 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
108 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
109 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
110 @Override |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
111 protected ChartGenerator.YAxisWalker getYAxisWalker() { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
112 return new YAxisWalker() { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
113 @Override |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
114 public int length() { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
115 return YAXIS.values().length; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
116 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
117 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
118 @Override |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
119 public String getId(int idx) { |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
120 YAXIS[] yaxes = YAXIS.values(); |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
121 return yaxes[idx].toString(); |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
122 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
123 }; |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
124 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
125 } |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
126 |
d87aadaa4f7e
Add FixDerivedCurveGenerator class
Christian Lins <christian.lins@intevation.de>
parents:
diff
changeset
|
127 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |