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

http://dive4elements.wald.intevation.org