Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/model/DischargeTables.java @ 150:c904d52cdfd0
Don't used interleaved x/y data.
flys-artifacts/trunk@1574 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Fri, 25 Mar 2011 13:51:09 +0000 |
parents | e8dfe6ba2000 |
children | c97f9bc9b642 |
comparison
equal
deleted
inserted
replaced
149:5a7662bb948c | 150:c904d52cdfd0 |
---|---|
26 | 26 |
27 protected List<String> gaugeNames; | 27 protected List<String> gaugeNames; |
28 | 28 |
29 protected String riverName; | 29 protected String riverName; |
30 | 30 |
31 protected Map<String, double []> values; | 31 protected Map<String, double [][]> values; |
32 | 32 |
33 public DischargeTables() { | 33 public DischargeTables() { |
34 } | 34 } |
35 | 35 |
36 public DischargeTables(String riverName, String [] gaugeNames) { | 36 public DischargeTables(String riverName, String [] gaugeNames) { |
40 public DischargeTables(String riverName, List<String> gaugeNames) { | 40 public DischargeTables(String riverName, List<String> gaugeNames) { |
41 this.riverName = riverName; | 41 this.riverName = riverName; |
42 this.gaugeNames = gaugeNames; | 42 this.gaugeNames = gaugeNames; |
43 } | 43 } |
44 | 44 |
45 public Map<String, double []> getValues() { | 45 public Map<String, double [][]> getValues() { |
46 if (values == null) { | 46 if (values == null) { |
47 values = loadValues(); | 47 values = loadValues(); |
48 } | 48 } |
49 return values; | 49 return values; |
50 } | 50 } |
51 | 51 |
52 protected Map<String, double []> loadValues() { | 52 protected Map<String, double [][]> loadValues() { |
53 Map<String, double []> values = new HashMap<String, double []>(); | 53 Map<String, double [][]> values = new HashMap<String, double [][]>(); |
54 | 54 |
55 SessionFactory sf = SessionFactoryProvider.getSessionFactory(); | 55 SessionFactory sf = SessionFactoryProvider.getSessionFactory(); |
56 Session session = sf.openSession(); | 56 Session session = sf.openSession(); |
57 | 57 |
58 try { | 58 try { |
82 DischargeTable table = tables.get(0); | 82 DischargeTable table = tables.get(0); |
83 | 83 |
84 List<DischargeTableValue> dtvs = | 84 List<DischargeTableValue> dtvs = |
85 table.getDischargeTableValues(); | 85 table.getDischargeTableValues(); |
86 | 86 |
87 double [] vs = new double[dtvs.size() << 1]; | 87 double [][] vs = new double[2][dtvs.size()]; |
88 | 88 |
89 int idx = 0; | 89 int idx = 0; |
90 for (DischargeTableValue dtv: dtvs) { | 90 for (DischargeTableValue dtv: dtvs) { |
91 vs[idx++] = dtv.getW().doubleValue(); | 91 vs[0][idx] = dtv.getW().doubleValue(); |
92 vs[idx++] = dtv.getQ().doubleValue(); | 92 vs[1][idx] = dtv.getQ().doubleValue(); |
93 ++idx; | |
93 } | 94 } |
94 | 95 |
95 values.put(gaugeName, vs); | 96 values.put(gaugeName, vs); |
96 } | 97 } |
97 | 98 |