annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/BedQualityResult.java @ 3766:d29cebf371ba

Use data of bed quality facets to fill the chart. flys-artifacts/trunk@5468 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 14 Sep 2012 12:20:57 +0000
parents 55fe9c1dc6f3
children 5a8f8fd5310c
rev   line source
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.artifacts.model.minfo;
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
2
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
3 import gnu.trove.TDoubleArrayList;
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
4
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
5 import java.io.Serializable;
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
6
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
7 import de.intevation.flys.artifacts.model.DateRange;
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
8
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
9 public class BedQualityResult implements Serializable {
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
10
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
11 public static enum DIAMETER_TYPE {
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
12 D90,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
13 D84,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
14 D80,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
15 D75,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
16 D70,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
17 D60,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
18 D50,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
19 D40,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
20 D30,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
21 D25,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
22 D20,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
23 D16,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
24 D10,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
25 DMIN,
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
26 DMAX
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
27 }
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
28
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
29 protected DIAMETER_TYPE type;
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
30 protected TDoubleArrayList diameter;
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
31 protected TDoubleArrayList kms;
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
32 protected DateRange dateRange;
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
33 protected boolean empty;
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
34
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
35 public BedQualityResult () {
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
36 empty = true;
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
37 }
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
38
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
39 public BedQualityResult (
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
40 String type,
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
41 TDoubleArrayList diameter,
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
42 TDoubleArrayList km,
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
43 DateRange range
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
44 ) {
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
45 if (km.size() > 0) {
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
46 empty = false;
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
47 }
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
48 this.type = DIAMETER_TYPE.valueOf(type.toUpperCase());
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
49 this.diameter = diameter;
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
50 this.kms = km;
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
51 this.dateRange = range;
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
52 }
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
53
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
54 public DIAMETER_TYPE getType() {
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
55 return this.type;
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
56 }
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
57
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
58 public TDoubleArrayList getKms() {
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
59 return this.kms;
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
60 }
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
61
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
62 public double getDiameter(int ndx) {
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
63 if (diameter != null) {
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
64 return this.diameter.get(ndx);
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
65 }
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
66 return Double.NaN;
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
67 }
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
68
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
69 public DateRange getDateRange() {
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
70 return this.dateRange;
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
71 }
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
72
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
73 public void setType(DIAMETER_TYPE type) {
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
74 this.type = type;
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
75 }
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
76
3763
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
77 public boolean isEmpty() {
55fe9c1dc6f3 Updated minfo bed quality result objects.
Raimund Renkert <raimund.renkert@intevation.de>
parents: 3760
diff changeset
78 return empty;
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
79 }
3766
d29cebf371ba Use data of bed quality facets to fill the chart.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3763
diff changeset
80
d29cebf371ba Use data of bed quality facets to fill the chart.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3763
diff changeset
81 public double[][] getDiameterData() {
d29cebf371ba Use data of bed quality facets to fill the chart.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3763
diff changeset
82 return new double[][] {
d29cebf371ba Use data of bed quality facets to fill the chart.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3763
diff changeset
83 kms.toNativeArray(),
d29cebf371ba Use data of bed quality facets to fill the chart.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3763
diff changeset
84 diameter.toNativeArray()
d29cebf371ba Use data of bed quality facets to fill the chart.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3763
diff changeset
85 };
d29cebf371ba Use data of bed quality facets to fill the chart.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3763
diff changeset
86 }
3760
312870fded7e Added result objects for minfo bed quality calculation.
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff changeset
87 }

http://dive4elements.wald.intevation.org