Mercurial > dive4elements > gnv-client
comparison gnv-artifacts/src/main/java/de/intevation/gnv/math/QueriedXYDepth.java @ 463:07672838fa5f
Make ground interpolation for vertical cross section configurable.
gnv-artifacts/trunk@522 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Sat, 09 Jan 2010 16:58:53 +0000 |
parents | 912797826099 |
children | f7038820df2e |
comparison
equal
deleted
inserted
replaced
462:912797826099 | 463:07672838fa5f |
---|---|
37 private QueryExecutor queryExecutor; | 37 private QueryExecutor queryExecutor; |
38 | 38 |
39 private ArrayList<SoftReference<RasterObject>> rasterData; | 39 private ArrayList<SoftReference<RasterObject>> rasterData; |
40 | 40 |
41 private RasterObject last; | 41 private RasterObject last; |
42 | |
43 private int interpolation; | |
42 | 44 |
43 /** | |
44 * Constructor | |
45 */ | |
46 public QueriedXYDepth() { | 45 public QueriedXYDepth() { |
46 this(RasterObject.BILINEAR); | |
47 } | |
48 | |
49 public QueriedXYDepth(int interpolation) { | |
50 this.interpolation = interpolation; | |
47 rasterData = new ArrayList<SoftReference<RasterObject>>(); | 51 rasterData = new ArrayList<SoftReference<RasterObject>>(); |
48 queryExecutor = QueryExecutorFactory.getInstance().getQueryExecutor(); | 52 queryExecutor = QueryExecutorFactory.getInstance().getQueryExecutor(); |
49 } | 53 } |
50 | 54 |
51 /** | 55 /** |
69 } catch (QueryException e) { | 73 } catch (QueryException e) { |
70 log.error(e, e); | 74 log.error(e, e); |
71 } | 75 } |
72 } | 76 } |
73 return ro != null | 77 return ro != null |
74 ? ro.getValue(coordinate) | 78 ? ro.getValue(coordinate, interpolation) |
75 : Double.NaN; | 79 : Double.NaN; |
76 } | 80 } |
77 | 81 |
78 private RasterObject getRasterObject(Coordinate coordinate){ | 82 private RasterObject getRasterObject(Coordinate coordinate) { |
79 if (last != null && last.contains(coordinate)) { | 83 if (last != null && last.contains(coordinate)) { |
80 return last; | 84 return last; |
81 } | 85 } |
82 for (int i = rasterData.size()-1; i >= 0; --i) { | 86 for (int i = rasterData.size()-1; i >= 0; --i) { |
83 SoftReference<RasterObject> ref = rasterData.get(i); | 87 SoftReference<RasterObject> ref = rasterData.get(i); |