annotate artifacts/src/main/java/org/dive4elements/river/exports/HistoricalDischargeCurveGenerator.java @ 9312:740d65e4aa14

Q [m³/s] one message
author gernotbelger
date Thu, 26 Jul 2018 15:54:20 +0200
parents 1cc7653ca84f
children 9b8e8fc1f408
rev   line source
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
2 * Software engineering by Intevation GmbH
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
3 *
5994
af13ceeba52a Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5867
diff changeset
4 * This file is Free Software under the GNU AGPL (>=v3)
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the
5994
af13ceeba52a Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5867
diff changeset
6 * documentation coming with Dive4Elements River for details.
5863
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
7 */
4897a58c8746 River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5838
diff changeset
8
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4736
diff changeset
9 package org.dive4elements.river.exports;
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
10
4176
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
11 import java.util.Date;
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
12
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
13 import org.apache.log4j.Logger;
6144
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
14 import org.dive4elements.artifactdatabase.state.ArtifactAndFacet;
9123
1cc7653ca84f Cleanup of ChartGenerator and ChartGenerator2 code. Put some of the copy/pasted code into a common abstraction.
gernotbelger
parents: 8856
diff changeset
15 import org.dive4elements.artifacts.CallContext;
6144
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
16 import org.dive4elements.river.artifacts.D4EArtifact;
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
17 import org.dive4elements.river.artifacts.access.HistoricalDischargeAccess;
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
18 import org.dive4elements.river.artifacts.model.FacetTypes;
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
19 import org.dive4elements.river.artifacts.model.HistoricalWQTimerange;
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
20 import org.dive4elements.river.artifacts.model.Timerange;
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
21 import org.dive4elements.river.artifacts.model.WQTimerange;
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
22 import org.dive4elements.river.jfree.StyledTimeSeries;
6905
1b35b2ddfc28 Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6156
diff changeset
23 import org.dive4elements.river.themes.ThemeDocument;
6144
cc7df824d5c4 Removed obsolete imports.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6142
diff changeset
24 import org.dive4elements.river.utils.RiverUtils;
4176
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
25 import org.jfree.chart.plot.XYPlot;
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
26 import org.jfree.data.general.SeriesException;
6142
a8adf19fbde3 Use FixMilliseconds instead of dates for time periods
Andre Heinecke <aheinecke@intevation.de>
parents: 5994
diff changeset
27 import org.jfree.data.time.FixedMillisecond;
4176
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
28 import org.jfree.data.time.RegularTimePeriod;
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
29 import org.jfree.data.time.TimeSeries;
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
30 import org.jfree.data.time.TimeSeriesCollection;
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
31
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
32 /**
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
33 * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a>
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
34 */
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
35 public class HistoricalDischargeCurveGenerator extends TimeseriesChartGenerator implements FacetTypes {
2249
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
36
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
37 private static Logger log = Logger.getLogger(HistoricalDischargeCurveGenerator.class);
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
38
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
39 public static final String I18N_CHART_TITLE = "chart.historical.discharge.title";
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
40
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
41 public static final String I18N_CHART_SUBTITLE = "chart.historical.discharge.subtitle";
8856
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
42
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
43 public static final String I18N_XAXIS_LABEL = "chart.historical.discharge.xaxis.label";
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
44
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
45 public static final String I18N_YAXIS_LABEL = "chart.historical.discharge.yaxis.label";
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
46
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
47 public static final String I18N_YAXIS_SECOND_LABEL = "common.export.csv.header.q";
2249
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
48
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
49 public static enum YAXIS {
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
50 W(0), Q(1);
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
51
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
52 protected int idx;
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
53
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
54 private YAXIS(final int c) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
55 this.idx = c;
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
56 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
57 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
58
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
59 @Override
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
60 protected YAxisWalker getYAxisWalker() {
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
61 return new YAxisWalker() {
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
62
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
63 @Override
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
64 public int length() {
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
65 return YAXIS.values().length;
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
66 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
67
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
68 @Override
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
69 public String getId(final int idx) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
70 final YAXIS[] yaxes = YAXIS.values();
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
71 return yaxes[idx].toString();
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
72 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
73 };
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
74 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
75
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
76 @Override
9123
1cc7653ca84f Cleanup of ChartGenerator and ChartGenerator2 code. Put some of the copy/pasted code into a common abstraction.
gernotbelger
parents: 8856
diff changeset
77 protected String getDefaultChartTitle(final CallContext context) {
2249
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
78 return msg(I18N_CHART_TITLE, I18N_CHART_TITLE);
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
79 }
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
80
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
81 @Override
9123
1cc7653ca84f Cleanup of ChartGenerator and ChartGenerator2 code. Put some of the copy/pasted code into a common abstraction.
gernotbelger
parents: 8856
diff changeset
82 protected String getDefaultChartSubtitle(final CallContext context) {
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
83 final D4EArtifact flys = getArtifact();
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
84 final Timerange evalTime = new HistoricalDischargeAccess(flys).getEvaluationTimerange();
4152
5ff3b2f5fb1c Added evaluation timerange to subtitle of historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3409
diff changeset
85
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
86 final Object[] args = new Object[] { RiverUtils.getReferenceGaugeName(flys), evalTime.getStart(), evalTime.getEnd() };
2249
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
87
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
88 return msg(I18N_CHART_SUBTITLE, "", args);
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
89 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
90
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
91 @Override
9123
1cc7653ca84f Cleanup of ChartGenerator and ChartGenerator2 code. Put some of the copy/pasted code into a common abstraction.
gernotbelger
parents: 8856
diff changeset
92 protected String getDefaultXAxisLabel(final CallContext context) {
2249
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
93 return msg(I18N_XAXIS_LABEL, I18N_XAXIS_LABEL);
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
94 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
95
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
96 @Override
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
97 protected String getDefaultYAxisLabel(final int pos) {
2249
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
98 if (pos == 0) {
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
99 return msg(I18N_YAXIS_LABEL, I18N_YAXIS_LABEL);
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
100 } else if (pos == 1) {
2249
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
101 return msg(I18N_YAXIS_SECOND_LABEL, I18N_YAXIS_SECOND_LABEL);
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
102 } else {
2249
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
103 return "NO TITLE FOR Y AXIS: " + pos;
997df76c6f58 Create title, subtitle and axes labels for charts from type historical discharge curve.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2243
diff changeset
104 }
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
105 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
106
4176
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
107 @Override
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
108 protected void adjustPlot(final XYPlot plot) {
4176
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
109 super.adjustPlot(plot);
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
110 plot.setRangeZeroBaselineVisible(true);
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
111 }
0e5544c54be8 Fixed flys/issue929. Made zero baseline in historical discharge curve charts visible.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4152
diff changeset
112
3409
97ad960f5579 Add subtitle to Fix W/Q chart and refactor addSubtitle() method(s)
Christian Lins <christian.lins@intevation.de>
parents: 2633
diff changeset
113 @Override
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
114 public void doOut(final ArtifactAndFacet artifactFacet, final ThemeDocument theme, final boolean visible) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
115 final String name = artifactFacet.getFacetName();
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
116 log.debug("HistoricalDischargeCurveGenerator.doOut: " + name);
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
117 log.debug("Theme description is: " + artifactFacet.getFacetDescription());
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
118
9123
1cc7653ca84f Cleanup of ChartGenerator and ChartGenerator2 code. Put some of the copy/pasted code into a common abstraction.
gernotbelger
parents: 8856
diff changeset
119 final CallContext context = getContext();
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
120
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
121 if (name.equals(HISTORICAL_DISCHARGE_Q)) {
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
122 doHistoricalDischargeOutQ((D4EArtifact) artifactFacet.getArtifact(), artifactFacet.getData(context), artifactFacet.getFacetDescription(), theme,
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
123 visible);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
124 } else if (name.equals(HISTORICAL_DISCHARGE_W)) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
125 doHistoricalDischargeOutW((D4EArtifact) artifactFacet.getArtifact(), artifactFacet.getData(context), artifactFacet.getFacetDescription(), theme,
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
126 visible);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
127 } else if (name.equals(HISTORICAL_DISCHARGE_Q_DIFF)) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
128 doHistoricalDischargeDifferenceOutQ((D4EArtifact) artifactFacet.getArtifact(), artifactFacet.getData(context), artifactFacet.getFacetDescription(),
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
129 theme, visible);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
130 } else if (name.equals(HISTORICAL_DISCHARGE_W_DIFF)) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
131 doHistoricalDischargeDifferenceOutW((D4EArtifact) artifactFacet.getArtifact(), artifactFacet.getData(context), artifactFacet.getFacetDescription(),
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
132 theme, visible);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
133 } else if (FacetTypes.IS.MANUALPOINTS(name)) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
134 final HistoricalDischargeAccess.EvaluationMode mode = new HistoricalDischargeAccess((D4EArtifact) getMaster()).getEvaluationMode();
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
135 final int axis = mode == HistoricalDischargeAccess.EvaluationMode.W ? YAXIS.Q.idx : YAXIS.W.idx;
7902
a7b218447e12 Potential fix for flys/issue1717: Draw manuel points on W or Q axis depending on the calculation.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 6905
diff changeset
136
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
137 doPoints(artifactFacet.getData(context), artifactFacet, theme, visible, axis);
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
138 } else {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
139 log.warn("doOut(): unknown facet name: " + name);
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
140 return;
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
141 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
142 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
143
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
144 protected void doHistoricalDischargeOutQ(final D4EArtifact artifact, final Object data, final String desc, final ThemeDocument theme,
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
145 final boolean visible) {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
146 log.debug("doHistoricalDischargeOut(): description = " + desc);
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
147
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
148 final WQTimerange wqt = (WQTimerange) data;
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
149
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
150 final TimeSeriesCollection tsc = newTimeSeriesCollection(wqt.getTimeranges(), wqt.getQs(), theme, desc);
2311
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
151
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
152 addAxisDataset(tsc, YAXIS.Q.idx, visible);
2311
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
153 }
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
154
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
155 protected void doHistoricalDischargeOutW(final D4EArtifact artifact, final Object data, final String desc, final ThemeDocument theme,
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
156 final boolean visible) {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
157 log.debug("doHistoricalDischargeOut(): description = " + desc);
2311
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
158
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
159 final WQTimerange wqt = (WQTimerange) data;
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
160
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
161 final TimeSeriesCollection tsc = newTimeSeriesCollection(wqt.getTimeranges(), wqt.getWs(), theme, desc);
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
162
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
163 addAxisDataset(tsc, YAXIS.W.idx, visible);
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
164 }
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
165
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
166 protected void doHistoricalDischargeDifferenceOutQ(final D4EArtifact artifact, final Object data, final String desc, final ThemeDocument theme,
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
167 final boolean visible) {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
168 log.debug("doHistoricalDischargeDifferenceOut: desc = " + desc);
2311
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
169
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
170 final HistoricalWQTimerange wqt = (HistoricalWQTimerange) data;
2311
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
171
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
172 final TimeSeriesCollection tsc = newTimeSeriesCollection(wqt.getTimeranges(), wqt.getDiffs(), theme, desc);
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
173
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
174 addAxisDataset(tsc, YAXIS.Q.idx, visible);
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
175 }
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
176
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
177 protected void doHistoricalDischargeDifferenceOutW(final D4EArtifact artifact, final Object data, final String desc, final ThemeDocument theme,
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
178 final boolean visible) {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
179 log.debug("doHistoricalDischargeDifferenceOut: desc = " + desc);
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
180
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
181 final HistoricalWQTimerange wqt = (HistoricalWQTimerange) data;
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
182
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
183 final TimeSeriesCollection tsc = newTimeSeriesCollection(wqt.getTimeranges(), wqt.getDiffs(), theme, desc);
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
184
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
185 addAxisDataset(tsc, YAXIS.W.idx, visible);
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
186 }
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
187
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
188 /**
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
189 * Creates a new TimeSeriesCollection with a single TimeSeries. The
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
190 * TimeSeries will consist of two RegularTimePeriods for each W/Q value
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
191 * provided by <i>wqt</i>. This has the effect, that the line in the chart
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
192 * looks like a "step chart".
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
193 */
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
194 protected TimeSeriesCollection newTimeSeriesCollection(final Timerange[] timeranges, final double[] values, final ThemeDocument theme, final String desc) {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
195 log.debug("Create new TimeSeriesCollection for: " + desc);
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
196
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
197 final TimeSeriesCollection tsc = new TimeSeriesCollection();
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
198 final TimeSeries series = new StyledTimeSeries(desc, theme);
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
199
2311
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
200 for (int i = 0, n = timeranges.length; i < n; i++) {
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
201 final RegularTimePeriod[] rtp = newRegularTimePeriod(timeranges[i]);
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
202
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
203 try {
2311
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
204 if (Double.isNaN(values[i])) {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
205 log.warn("Skip TimePeriod because value is NaN.");
2243
d70a04cad84d Improved chart creation for historical discharge curves.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2240
diff changeset
206 continue;
d70a04cad84d Improved chart creation for historical discharge curves.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2240
diff changeset
207 }
d70a04cad84d Improved chart creation for historical discharge curves.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2240
diff changeset
208
2311
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
209 series.add(rtp[0], values[i]);
b8df8d1476ba Compute differences between discharge table values and reference discharge table values in historical discharge curve calculation.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2249
diff changeset
210 series.add(rtp[1], values[i]);
2243
d70a04cad84d Improved chart creation for historical discharge curves.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2240
diff changeset
211
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
212 if (log.isDebugEnabled()) {
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
213 log.debug("added Item to TimeSeries:");
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
214 log.debug(" TimePeriod: " + rtp[0] + " - " + rtp[1]);
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
215 log.debug(" Value: " + values[i]);
2243
d70a04cad84d Improved chart creation for historical discharge curves.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2240
diff changeset
216 }
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
217 }
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
218 catch (final SeriesException se) {
8202
e4606eae8ea5 sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents: 7902
diff changeset
219 log.warn("Error while adding TimePeriod: " + se);
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
220 }
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
221 }
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
222
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
223 tsc.addSeries(series);
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
224
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
225 return tsc;
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
226 }
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
227
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
228 /**
8856
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
229 * Create array that consists of two
5e38e2924c07 Fix code style.
Tom Gottfried <tom@intevation.de>
parents: 8202
diff changeset
230 * <i>FixedMillisecond</i> periods [start, end].
4736
b195fede1c3b Remove trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4232
diff changeset
231 *
4232
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
232 * @param timerange
b3aa91e45010 Implemented the Q evaluation mode for historical discharge calculations.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 4176
diff changeset
233 * Supports start and end time.
4736
b195fede1c3b Remove trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents: 4232
diff changeset
234 *
6156
eee77cdd72fc Fix comment for newRegularTimePeriod
Andre Heinecke <aheinecke@intevation.de>
parents: 6144
diff changeset
235 * @return an array with two <i>FixedMillisecond</i> periods [start, end].
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
236 */
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
237 protected RegularTimePeriod[] newRegularTimePeriod(final Timerange timerange) {
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
238 final Date start = new Date(timerange.getStart());
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
239 final Date end = new Date(timerange.getEnd() - 1000 * 60 * 60 * 24);
2240
e9173de1026c The HistoricalDischargeCurveGenerator now creates new AxisDataset objects and new TimeSeriesCollections for each Facet.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 2233
diff changeset
240
9312
740d65e4aa14 Q [m³/s] one message
gernotbelger
parents: 9123
diff changeset
241 return new RegularTimePeriod[] { new FixedMillisecond(start), new FixedMillisecond(end) };
2215
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
242 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
243 }
ebbb18ed78c4 Added new classes and stubs used to calculate data for historical discharge curve charts.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents:
diff changeset
244 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :

http://dive4elements.wald.intevation.org