Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/artifacts/access/RangeAccess.java @ 9801:1d7a72a50183 3.2.x tip
Assume Compose V2, consistently
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Thu, 23 Nov 2023 10:14:13 +0100 |
parents | 0a5239a1e46e |
children |
rev | line source |
---|---|
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
2 * Software engineering by Intevation GmbH |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
3 * |
5994
af13ceeba52a
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5867
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
5994
af13ceeba52a
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5867
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
5863
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
7 */ |
4897a58c8746
River artifacts: Added new copyright headers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5838
diff
changeset
|
8 |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5665
diff
changeset
|
9 package org.dive4elements.river.artifacts.access; |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
10 |
6102
29dc6b6e7199
Removed obsolete imports and dead code.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6101
diff
changeset
|
11 import gnu.trove.TDoubleArrayList; |
29dc6b6e7199
Removed obsolete imports and dead code.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6101
diff
changeset
|
12 |
9726 | 13 import org.apache.logging.log4j.Logger; |
14 import org.apache.logging.log4j.LogManager; | |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
15 |
5867
59ff03ff48f1
River artifacts: Renamed FLYSArtifact(Collection) to D4EArtifact(Collection).
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5865
diff
changeset
|
16 import org.dive4elements.river.artifacts.D4EArtifact; |
5831
bd047b71ab37
Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5665
diff
changeset
|
17 import org.dive4elements.river.artifacts.WINFOArtifact; |
4850
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
18 |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
19 import org.dive4elements.river.utils.RiverUtils; |
8562
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
20 import org.dive4elements.river.utils.DoubleUtil; |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
21 |
4850
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
22 |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
23 /** For the moment, light-weight wrapper around RiverUtils. */ |
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
24 // TODO employ 'Caching' like other Accesses, remove usage of RiverUtils. |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
25 public class RangeAccess |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
26 extends RiverAccess |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
27 { |
9726 | 28 private static Logger log = LogManager.getLogger(RangeAccess.class); |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
29 |
4852
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
30 public static enum KM_MODE { RANGE, LOCATIONS, NONE }; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
31 |
8562
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
32 /** The default step width between the start end end kilometer. */ |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
33 public static final double DEFAULT_KM_STEPS = 0.1; |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
34 |
4852
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
35 double[] kmRange; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
36 |
4824
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
37 Double from; |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
38 |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
39 Double to; |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
40 |
4825
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
41 Double step; |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
42 |
4852
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
43 private KM_MODE mode; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
44 |
7055
1f38656b68c4
DGM SRIds are now fetched from database instead of configuration.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6988
diff
changeset
|
45 public RangeAccess() { |
1f38656b68c4
DGM SRIds are now fetched from database instead of configuration.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6988
diff
changeset
|
46 } |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
47 |
6101
a0078e5e3b39
Removed unused context from RangeAccess and subclasses leading to some dead code removal.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5994
diff
changeset
|
48 public RangeAccess(D4EArtifact artifact) { |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
49 super(artifact); |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
50 } |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
51 |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
52 |
4852
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
53 /** Evaluate the ld_mode data of artifact. */ |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
54 public KM_MODE getKmRangeMode() { |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
55 if (mode != null) { |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
56 return mode; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
57 } |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
58 String modeData = getString("ld_mode"); |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
59 |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
60 if (modeData == null || modeData.length() == 0) { |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
61 mode = KM_MODE.NONE; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
62 } |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
63 else if (modeData.equals("distance")) { |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
64 mode = KM_MODE.RANGE; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
65 } |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
66 else if (modeData.equals("locations")) { |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
67 mode = KM_MODE.LOCATIONS; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
68 } |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
69 else { |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
70 mode = KM_MODE.NONE; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
71 } |
5282
14db045d6368
Removed trailing whitespace.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
4853
diff
changeset
|
72 |
4852
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
73 return mode; |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
74 } |
9790a284246c
RangeAccess, FLYSUtils; Moved getKmRangeMode implementation to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4850
diff
changeset
|
75 |
8755
30b1ddadf275
(issue1801) Unify reference gauge finding code
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8646
diff
changeset
|
76 /** Check if the calculation mode is Range. */ |
30b1ddadf275
(issue1801) Unify reference gauge finding code
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8646
diff
changeset
|
77 public boolean isRange() { |
30b1ddadf275
(issue1801) Unify reference gauge finding code
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8646
diff
changeset
|
78 return getKmRangeMode() == KM_MODE.RANGE; |
30b1ddadf275
(issue1801) Unify reference gauge finding code
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8646
diff
changeset
|
79 } |
30b1ddadf275
(issue1801) Unify reference gauge finding code
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8646
diff
changeset
|
80 |
4850
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
81 /** |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
82 * Return sorted array of locations at which stuff was calculated |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
83 * (from ld_locations data), null if not parameterized this way. |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
84 */ |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
85 public double[] getLocations() { |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
86 String locationStr = getString("ld_locations"); |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
87 |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
88 if (locationStr == null || locationStr.length() == 0) { |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
89 if (getArtifact() instanceof WINFOArtifact) { |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
90 WINFOArtifact winfo = (WINFOArtifact) getArtifact(); |
8856 | 91 if (winfo.getReferenceStartKm() != null |
92 && winfo.getReferenceEndKms() != null | |
93 ) { | |
4850
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
94 return new double[] |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
95 { |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
96 winfo.getReferenceStartKm().doubleValue(), |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
97 winfo.getReferenceEndKms()[0] |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
98 }; |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
99 } |
5665
3b12c890b0b2
Fix RangeAccess.getLocations for Reference Curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5282
diff
changeset
|
100 else if (winfo.getReferenceStartKm() != null) { |
3b12c890b0b2
Fix RangeAccess.getLocations for Reference Curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5282
diff
changeset
|
101 return new double[] |
3b12c890b0b2
Fix RangeAccess.getLocations for Reference Curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5282
diff
changeset
|
102 { |
3b12c890b0b2
Fix RangeAccess.getLocations for Reference Curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5282
diff
changeset
|
103 winfo.getReferenceStartKm().doubleValue(), |
3b12c890b0b2
Fix RangeAccess.getLocations for Reference Curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5282
diff
changeset
|
104 winfo.getReferenceStartKm().doubleValue() |
3b12c890b0b2
Fix RangeAccess.getLocations for Reference Curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5282
diff
changeset
|
105 }; |
3b12c890b0b2
Fix RangeAccess.getLocations for Reference Curves.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
5282
diff
changeset
|
106 } |
4850
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
107 } |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
108 return null; |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
109 } |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
110 |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
111 String[] tmp = locationStr.split(" "); |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
112 TDoubleArrayList locations = new TDoubleArrayList(); |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
113 |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
114 for (String l: tmp) { |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
115 try { |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
116 locations.add(Double.parseDouble(l)); |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
117 } |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
118 catch (NumberFormatException nfe) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7262
diff
changeset
|
119 log.debug(nfe.getLocalizedMessage(), nfe); |
4850
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
120 } |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
121 } |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
122 |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
123 locations.sort(); |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
124 |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
125 return locations.toNativeArray(); |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
126 } |
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
127 |
6988
fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6102
diff
changeset
|
128 public boolean hasFrom() { |
fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6102
diff
changeset
|
129 return from != null || (from = getDouble("ld_from")) != null; |
fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6102
diff
changeset
|
130 } |
fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6102
diff
changeset
|
131 |
fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6102
diff
changeset
|
132 public boolean hasTo() { |
fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6102
diff
changeset
|
133 return to != null || (to = getDouble("ld_to")) != null; |
fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6102
diff
changeset
|
134 } |
fc2de41ebdb8
flys/issue1485 Better titles for UESK layers.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6102
diff
changeset
|
135 |
8646
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
136 /* If left_to_right is set to true this returns |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
137 * the smaller value of from and to. */ |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
138 public double getFrom(boolean left_to_right) { |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
139 if (!left_to_right) { |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
140 return getFrom(); |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
141 } |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
142 double from = getFrom(); |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
143 double to = getTo(); |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
144 return from > to ? to : from; |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
145 } |
4850
c9a27912840d
RangeAccess: Add accidentally omitted implementation of getLocations from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4827
diff
changeset
|
146 |
7262
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
147 /** Return ld_from data (in km). If not found, the min. */ |
4824
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
148 public double getFrom() { |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
149 if (from == null) { |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
150 from = getDouble("ld_from"); |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
151 } |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
152 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7262
diff
changeset
|
153 if (log.isDebugEnabled()) { |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7262
diff
changeset
|
154 log.debug("from from data: '" + from + "'"); |
7262
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
155 } |
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
156 |
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
157 if (from == null) { |
8310
e3a8aa6eee32
Make SQ-relations loadable in WQ-diagrams.
"Tom Gottfried <tom@intevation.de>"
parents:
8202
diff
changeset
|
158 log.warn("No 'from' found. Assume min of river."); |
7262
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
159 return getRiver().determineMinMaxDistance()[0]; |
4827
15e55fdbb402
RangeAccess: Doc and debug.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4825
diff
changeset
|
160 } |
15e55fdbb402
RangeAccess: Doc and debug.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4825
diff
changeset
|
161 |
4824
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
162 return from.doubleValue(); |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
163 } |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
164 |
8646
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
165 /* If left_to_right is set to true this returns |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
166 * the larger value of from and to. */ |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
167 public double getTo(boolean left_to_right) { |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
168 if (!left_to_right) { |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
169 return getTo(); |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
170 } |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
171 double from = getFrom(); |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
172 double to = getTo(); |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
173 return from > to ? from : to; |
8e5c026216fd
(issue1754) Extend RangeAccess to simplyfiy range access where it is assumed that from < to
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8562
diff
changeset
|
174 } |
4824
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
175 |
7262
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
176 /** Return ld_to data (in km), if not found, the max. */ |
4824
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
177 public double getTo() { |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
178 if (to == null) { |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
179 to = getDouble("ld_to"); |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
180 } |
4827
15e55fdbb402
RangeAccess: Doc and debug.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4825
diff
changeset
|
181 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7262
diff
changeset
|
182 if (log.isDebugEnabled()) { |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7262
diff
changeset
|
183 log.debug("to from data: '" + to + "'"); |
7262
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
184 } |
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
185 |
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
186 if (to == null) { |
8310
e3a8aa6eee32
Make SQ-relations loadable in WQ-diagrams.
"Tom Gottfried <tom@intevation.de>"
parents:
8202
diff
changeset
|
187 log.warn("No 'to' found. Assume max of river."); |
7262
7bf8ebdcc4ac
RangeAccess: Use min/max as from/to in RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7055
diff
changeset
|
188 return getRiver().determineMinMaxDistance()[1]; |
4827
15e55fdbb402
RangeAccess: Doc and debug.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4825
diff
changeset
|
189 } |
15e55fdbb402
RangeAccess: Doc and debug.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4825
diff
changeset
|
190 |
4824
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
191 return to.doubleValue(); |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
192 } |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
193 |
d5d2faf14522
BedHeightQualityAccess, RangeAccess: Refactored, moved getFrom/To to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4699
diff
changeset
|
194 |
4825
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
195 /** Step width for calculation. */ |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
196 public Double getStep() { |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
197 |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
198 if (step == null) { |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
199 step = getDouble("ld_step"); |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
200 } |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
201 |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7262
diff
changeset
|
202 if (log.isDebugEnabled()) { |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7262
diff
changeset
|
203 log.debug("step: '" + step + "'"); |
4825
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
204 } |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
205 |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
206 return step; |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
207 } |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
208 |
f8217f1fef2e
ExtremeAccess, RangeAccess and callers: Refactored, moved getStep to RangeAccess.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4824
diff
changeset
|
209 |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
210 /** |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
211 * Get min and max kilometer, independent of parametization |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
212 * (ld_from/to vs ld_locations). |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
213 */ |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
214 public double[] getKmRange() { |
4853
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
215 // TODO store kmRange in field. |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
216 switch (getKmRangeMode()) { |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
217 case RANGE: { |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
218 return getKmFromTo(); |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
219 } |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
220 |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
221 case LOCATIONS: { |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
222 double[] locs = getLocations(); |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
223 // if no locations, nPE. |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
224 if (locs == null) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7262
diff
changeset
|
225 log.warn("no locations to get km range from."); |
4853
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
226 return new double[] { Double.NaN, Double.NaN }; |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
227 } |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
228 return new double[] { locs[0], locs[locs.length-1] }; |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
229 } |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
230 |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
231 case NONE: { |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
232 double[] locs = getLocations(); |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
233 if (locs != null) { |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
234 return new double[] { locs[0], locs[locs.length-1] }; |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
235 } |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
236 else { |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
237 return getKmFromTo(); |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
238 } |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
239 } |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
240 } |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
241 |
a0949259181e
RangeAccess.getKmRange: Extracted from FLYSUtils.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
4852
diff
changeset
|
242 return new double[] { Double.NaN, Double.NaN }; |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
243 } |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
244 |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
245 |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
246 public double[] getKmFromTo() { |
5865
73da40528cf2
River artifacts: Renamed FLYSUtils to RiverUtils.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
5863
diff
changeset
|
247 return RiverUtils.getKmFromTo(this.getArtifact()); |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
248 } |
8562
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
249 |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
250 /** |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
251 * Returns the selected Kms in steps as specified. |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
252 * |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
253 * @return Each step for this range. |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
254 */ |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
255 public double[] getKmSteps() { |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
256 double step = getStep(); |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
257 |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
258 // transform step from 'm' into 'km' |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
259 step = step / 1000; |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
260 |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
261 if (step == 0d) { |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
262 step = DEFAULT_KM_STEPS; |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
263 } |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
264 |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
265 return DoubleUtil.explode(getFrom(), getTo(), step); |
c62837ba37f3
(issue1755) Move KM Step handling from Winfo artifact to RangeAccess
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8310
diff
changeset
|
266 } |
4647
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
267 } |
1fea4243721c
Add stubs for GaugeAccess and RangeAccess, for they do not get lost.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
diff
changeset
|
268 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : |