Mercurial > dive4elements > river
annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/sq/Measurements.java @ 4282:8b4988815974
Added marker for Ws and Qs in Historical Discharge WQ charts.
Therefore, the XYChartGenerator got two new methods addDomainMarker(Marker, boolean) and addValueMarker(Marker, boolean).
The boolean parameters determine, if the marker should be visible or not. This is analogous to addAxisSeries(XYSeries, int, boolean).
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Mon, 29 Oct 2012 05:59:27 +0100 |
parents | f02aa4ff3c0f |
children |
rev | line source |
---|---|
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.artifacts.model.sq; |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
2 |
3294
5e52202302e5
SQ relation: Handle the error case of accessing wrong indexed SQ relation more smoothly.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3290
diff
changeset
|
3 import java.util.ArrayList; |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
4 import java.util.List; |
3294
5e52202302e5
SQ relation: Handle the error case of accessing wrong indexed SQ relation more smoothly.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3290
diff
changeset
|
5 |
5e52202302e5
SQ relation: Handle the error case of accessing wrong indexed SQ relation more smoothly.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3290
diff
changeset
|
6 import org.apache.log4j.Logger; |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
7 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
8 public class Measurements |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
9 { |
3294
5e52202302e5
SQ relation: Handle the error case of accessing wrong indexed SQ relation more smoothly.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3290
diff
changeset
|
10 private static final Logger log = Logger.getLogger(Measurements.class); |
5e52202302e5
SQ relation: Handle the error case of accessing wrong indexed SQ relation more smoothly.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3290
diff
changeset
|
11 |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
12 public interface SExtractor { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
13 double getS(Measurement measument); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
14 } // interface SExtractor |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
15 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
16 public static final SExtractor S_SF_EXTRACTOR = new SExtractor() { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
17 @Override |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
18 public double getS(Measurement measument) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
19 return measument.S_SF(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
20 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
21 }; |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
22 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
23 public static final SExtractor S_SS_EXTRACTOR = new SExtractor() { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
24 @Override |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
25 public double getS(Measurement measument) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
26 return measument.S_SS(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
27 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
28 }; |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
29 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
30 public static final SExtractor S_BL_S_EXTRACTOR = new SExtractor() { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
31 @Override |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
32 public double getS(Measurement measument) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
33 return measument.S_BL_S(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
34 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
35 }; |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
36 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
37 public static final SExtractor S_BL_FG_EXTRACTOR = new SExtractor() { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
38 @Override |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
39 public double getS(Measurement measument) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
40 return measument.S_BL_FG(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
41 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
42 }; |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
43 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
44 public static final SExtractor S_BL_CG_EXTRACTOR = new SExtractor() { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
45 @Override |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
46 public double getS(Measurement measument) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
47 return measument.S_BL_CG(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
48 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
49 }; |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
50 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
51 public static final SExtractor S_BL_EXTRACTOR = new SExtractor() { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
52 @Override |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
53 public double getS(Measurement measument) { |
3922
e1d3f6bccf2b
S/Q: More symbols in reconstruction of Excel macros.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3294
diff
changeset
|
54 return measument.BL_S(); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
55 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
56 }; |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
57 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
58 protected List<Measurement> measuments; |
4001
ab3a4ad82ae1
S(Q) accumulated same diameter meassurements per bank distance.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3922
diff
changeset
|
59 protected List<Measurement> accumulated; |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
60 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
61 public Measurements() { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
62 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
63 |
4001
ab3a4ad82ae1
S(Q) accumulated same diameter meassurements per bank distance.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3922
diff
changeset
|
64 public Measurements( |
ab3a4ad82ae1
S(Q) accumulated same diameter meassurements per bank distance.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3922
diff
changeset
|
65 List<Measurement> measuments, |
ab3a4ad82ae1
S(Q) accumulated same diameter meassurements per bank distance.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3922
diff
changeset
|
66 List<Measurement> accumulated |
ab3a4ad82ae1
S(Q) accumulated same diameter meassurements per bank distance.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3922
diff
changeset
|
67 ) { |
4066
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
68 if (log.isDebugEnabled()) { |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
69 log.debug("number of measuments: " + measuments.size()); |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
70 log.debug("number of accumulated: " + accumulated.size()); |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
71 } |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
72 this.measuments = measuments; |
4001
ab3a4ad82ae1
S(Q) accumulated same diameter meassurements per bank distance.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
3922
diff
changeset
|
73 this.accumulated = accumulated; |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
74 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
75 |
4005
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
76 public static List<SQ> extractSQ( |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
77 List<Measurement> measuments, |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
78 SExtractor extractor |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
79 ) { |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
80 List<SQ> result = new ArrayList<SQ>(measuments.size()); |
4066
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
81 int invalid = 0; |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
82 for (Measurement measument: measuments) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
83 SQ sq = new SQ(extractor.getS(measument), measument.Q()); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
84 if (sq.isValid()) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
85 result.add(sq); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
86 } |
4066
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
87 else { |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
88 ++invalid; |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
89 } |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
90 } |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
91 if (log.isDebugEnabled()) { |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
92 log.debug("Removed num invalid: " + invalid |
f02aa4ff3c0f
S/Q relation: Fixed problem with loosing meassurement points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4005
diff
changeset
|
93 + " of " + measuments.size()); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
94 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
95 return result; |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
96 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
97 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
98 public List<SQ> S_SF() { |
4005
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
99 return extractSQ(measuments, S_SF_EXTRACTOR); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
100 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
101 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
102 public List<SQ> S_SS() { |
4005
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
103 return extractSQ(measuments, S_SS_EXTRACTOR); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
104 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
105 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
106 public List<SQ> S_BL_S() { |
4005
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
107 return extractSQ(accumulated, S_BL_S_EXTRACTOR); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
108 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
109 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
110 public List<SQ> S_BL_FG() { |
4005
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
111 return extractSQ(accumulated, S_BL_FG_EXTRACTOR); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
112 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
113 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
114 public List<SQ> S_BL_CG() { |
4005
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
115 return extractSQ(accumulated, S_BL_CG_EXTRACTOR); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
116 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
117 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
118 public List<SQ> S_BL() { |
4005
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
119 return extractSQ(accumulated, S_BL_EXTRACTOR); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
120 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
121 |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
122 public List<SQ> getSQs(int index) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
123 switch (index) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
124 case 0: return S_SF(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
125 case 1: return S_SS(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
126 case 2: return S_BL_S(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
127 case 3: return S_BL_FG(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
128 case 4: return S_BL_CG(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
129 case 5: return S_BL(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
130 } |
3294
5e52202302e5
SQ relation: Handle the error case of accessing wrong indexed SQ relation more smoothly.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3290
diff
changeset
|
131 log.error("THIS SHOULD NOT HAPPEN: Tried to access SQ[" + index + "]"); |
5e52202302e5
SQ relation: Handle the error case of accessing wrong indexed SQ relation more smoothly.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3290
diff
changeset
|
132 return new ArrayList<SQ>(0); |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
133 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
134 |
4005
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
135 /** |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
136 * Gets the accumulated for this instance. |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
137 * |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
138 * @return The accumulated. |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
139 */ |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
140 public List<Measurement> getAccumulated() { |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
141 return this.accumulated; |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
142 } |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
143 |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
144 /** |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
145 * Sets the accumulated for this instance. |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
146 * |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
147 * @param accumulated The accumulated. |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
148 */ |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
149 public void setAccumulated(List<Measurement> accumulated) { |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
150 this.accumulated = accumulated; |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
151 } |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
152 |
22abdc45869c
Calculate S(Q) fractions
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4001
diff
changeset
|
153 |
3290
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
154 @Override |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
155 public String toString() { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
156 StringBuilder sb = new StringBuilder("Measurements ["); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
157 for (int i = 0, M = measuments.size(); i < M; ++i) { |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
158 if (i > 0) sb.append(", "); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
159 sb.append(measuments.get(i)); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
160 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
161 return sb.append(']').toString(); |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
162 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
163 } |
36f3b53d5cfc
SQ relation: Added infrastructure to extract fractions from measurments.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff
changeset
|
164 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : |