Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/minfo/SedimentLoadResult.java @ 4372:19772b414d46
New facet and result set for sediment load.
* Added new facet and updated sediment load config and facet types.
* Added new result set for sediment load.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Fri, 02 Nov 2012 14:53:51 +0100 |
parents | |
children | 2eabb5aa0bb6 |
comparison
equal
deleted
inserted
replaced
4371:26afee1b8959 | 4372:19772b414d46 |
---|---|
1 package de.intevation.flys.artifacts.model.minfo; | |
2 | |
3 import gnu.trove.TDoubleArrayList; | |
4 | |
5 import java.io.Serializable; | |
6 import java.util.Set; | |
7 | |
8 public class SedimentLoadResult | |
9 implements Serializable | |
10 { | |
11 protected int startYear; | |
12 protected int endYear; | |
13 protected SedimentLoad load; | |
14 | |
15 public SedimentLoadResult() { | |
16 } | |
17 | |
18 public SedimentLoadResult( | |
19 int startYear, | |
20 int endYear, | |
21 SedimentLoad load | |
22 ) { | |
23 this.startYear = startYear; | |
24 this.endYear = endYear; | |
25 this.load = load; | |
26 } | |
27 | |
28 public int getStartYear() { | |
29 return this.startYear; | |
30 } | |
31 | |
32 public void setStartYear(int year) { | |
33 this.startYear = year; | |
34 } | |
35 | |
36 public int getEndYear() { | |
37 return this.endYear; | |
38 } | |
39 | |
40 public void setEndYear(int year) { | |
41 this.endYear = year; | |
42 } | |
43 | |
44 public double[][] getTotalData () { | |
45 Set<Double> kms = this.load.getKms(); | |
46 TDoubleArrayList k = new TDoubleArrayList(); | |
47 TDoubleArrayList total = new TDoubleArrayList(); | |
48 for (double km : kms) { | |
49 if (load.getFraction(km).getTotal() > 0d) { | |
50 k.add(km); | |
51 total.add(load.getFraction(km).getTotal()); | |
52 } | |
53 } | |
54 return new double [][] { | |
55 k.toNativeArray(), | |
56 total.toNativeArray() | |
57 }; | |
58 } | |
59 | |
60 public double[][] getSandData() { | |
61 Set<Double> kms = this.load.getKms(); | |
62 TDoubleArrayList k = new TDoubleArrayList(); | |
63 TDoubleArrayList sand = new TDoubleArrayList(); | |
64 for(double km : kms) { | |
65 if (load.getFraction(km).getSand() > 0d) { | |
66 k.add(km); | |
67 sand.add(load.getFraction(km).getSand()); | |
68 } | |
69 } | |
70 return new double [][] { | |
71 k.toNativeArray(), | |
72 sand.toNativeArray() | |
73 }; | |
74 } | |
75 | |
76 public double[][] getFineMiddleData() { | |
77 Set<Double> kms = this.load.getKms(); | |
78 TDoubleArrayList k = new TDoubleArrayList(); | |
79 TDoubleArrayList fm = new TDoubleArrayList(); | |
80 for (double km : kms) { | |
81 if (load.getFraction(km).getFine_middle() > 0d) { | |
82 k.add(km); | |
83 fm.add(load.getFraction(km).getFine_middle()); | |
84 } | |
85 } | |
86 return new double [][] { | |
87 k.toNativeArray(), | |
88 fm.toNativeArray() | |
89 }; | |
90 } | |
91 | |
92 public double[][] getCoarseData() { | |
93 Set<Double> kms = this.load.getKms(); | |
94 TDoubleArrayList k = new TDoubleArrayList(); | |
95 TDoubleArrayList coarse = new TDoubleArrayList(); | |
96 for (double km : kms) { | |
97 if (load.getFraction(km).getCoarse() > 0d) { | |
98 k.add(km); | |
99 coarse.add(load.getFraction(km).getCoarse()); | |
100 } | |
101 } | |
102 return new double [][] { | |
103 k.toNativeArray(), | |
104 coarse.toNativeArray() | |
105 }; | |
106 } | |
107 | |
108 public double[][] getSuspSandData() { | |
109 Set<Double> kms = this.load.getKms(); | |
110 TDoubleArrayList k = new TDoubleArrayList(); | |
111 TDoubleArrayList ss = new TDoubleArrayList(); | |
112 for (double km : kms) { | |
113 if (load.getFraction(km).getSusp_sand() > 0d) { | |
114 k.add(km); | |
115 ss.add(load.getFraction(km).getSusp_sand()); | |
116 } | |
117 } | |
118 return new double [][] { | |
119 k.toNativeArray(), | |
120 ss.toNativeArray() | |
121 }; | |
122 } | |
123 | |
124 public double[][] getSuspSandBedData() { | |
125 Set<Double> kms = this.load.getKms(); | |
126 TDoubleArrayList k = new TDoubleArrayList(); | |
127 TDoubleArrayList ss = new TDoubleArrayList(); | |
128 for (double km : kms) { | |
129 if (load.getFraction(km).getSusp_sand_bed() > 0d) { | |
130 k.add(km); | |
131 ss.add(load.getFraction(km).getSusp_sand_bed()); | |
132 } | |
133 } | |
134 return new double [][] { | |
135 k.toNativeArray(), | |
136 ss.toNativeArray() | |
137 }; | |
138 } | |
139 | |
140 public double[][] getSuspSedimentData() { | |
141 Set<Double> kms = this.load.getKms(); | |
142 TDoubleArrayList k = new TDoubleArrayList(); | |
143 TDoubleArrayList ss = new TDoubleArrayList(); | |
144 for (double km : kms) { | |
145 if (load.getFraction(km).getSusp_sediment() > 0d) { | |
146 k.add(km); | |
147 ss.add(load.getFraction(km).getSusp_sediment()); | |
148 } | |
149 } | |
150 return new double [][] { | |
151 k.toNativeArray(), | |
152 ss.toNativeArray() | |
153 }; | |
154 } | |
155 | |
156 public boolean hasCoarseData() { | |
157 return getCoarseData().length > 0; | |
158 } | |
159 | |
160 public boolean hasFineMiddleData() { | |
161 return getFineMiddleData().length > 0; | |
162 } | |
163 | |
164 public boolean hasSandData() { | |
165 return getSandData().length > 0; | |
166 } | |
167 | |
168 public boolean hasSuspSandData() { | |
169 return getSuspSandData().length > 0; | |
170 } | |
171 | |
172 public boolean hasSuspSandBedData() { | |
173 return getSuspSandBedData().length > 0; | |
174 } | |
175 | |
176 public boolean hasSuspSedimentData() { | |
177 return getSuspSedimentData().length > 0; | |
178 } | |
179 | |
180 public boolean hasTotalData() { | |
181 return getTotalData().length > 0; | |
182 } | |
183 } |