Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/vegetationzones/VegetationZonesCrossSectionProcessor.java @ 9527:7c8d62867876
Cleanup of MainWstValue code. Cache qPositions once determined.
author | gernotbelger |
---|---|
date | Tue, 02 Oct 2018 13:25:52 +0200 |
parents | ee6508687e3f |
children | d9fda7af24ca |
comparison
equal
deleted
inserted
replaced
9526:51212d40ff56 | 9527:7c8d62867876 |
---|---|
21 import org.dive4elements.artifacts.CallMeta; | 21 import org.dive4elements.artifacts.CallMeta; |
22 import org.dive4elements.artifacts.DataProvider; | 22 import org.dive4elements.artifacts.DataProvider; |
23 import org.dive4elements.river.artifacts.D4EArtifact; | 23 import org.dive4elements.river.artifacts.D4EArtifact; |
24 import org.dive4elements.river.artifacts.access.RiverAccess; | 24 import org.dive4elements.river.artifacts.access.RiverAccess; |
25 import org.dive4elements.river.artifacts.model.CrossSectionFacetUtils; | 25 import org.dive4elements.river.artifacts.model.CrossSectionFacetUtils; |
26 import org.dive4elements.river.artifacts.model.river.MainWstValuesCalculator; | 26 import org.dive4elements.river.artifacts.model.river.MainWstValues; |
27 import org.dive4elements.river.artifacts.resources.Resources; | 27 import org.dive4elements.river.artifacts.resources.Resources; |
28 import org.dive4elements.river.exports.CrossSectionGenerator; | 28 import org.dive4elements.river.exports.CrossSectionGenerator; |
29 import org.dive4elements.river.jfree.StripedAreaDataset; | 29 import org.dive4elements.river.jfree.StripedAreaDataset; |
30 import org.dive4elements.river.jfree.StripedAreaDataset.Stripe; | 30 import org.dive4elements.river.jfree.StripedAreaDataset.Stripe; |
31 import org.dive4elements.river.model.FastCrossSectionLine; | 31 import org.dive4elements.river.model.FastCrossSectionLine; |
85 | 85 |
86 final StripedAreaDataset dataset = new StripedAreaDataset(theme); | 86 final StripedAreaDataset dataset = new StripedAreaDataset(theme); |
87 | 87 |
88 for (final VegetationZoneServerClientXChange zone : zones) { | 88 for (final VegetationZoneServerClientXChange zone : zones) { |
89 | 89 |
90 final double lower = uefdToHeight(context, river, currentStation, zone.getLowerFromTo()); | 90 final double lower = uefdToHeight(river, currentStation, zone.getLowerFromTo()); |
91 final double upper = uefdToHeight(context, river, currentStation, zone.getUpperFromTo()); | 91 final double upper = uefdToHeight(river, currentStation, zone.getUpperFromTo()); |
92 | 92 |
93 final Color color = Color.decode(zone.getHexColor()); | 93 final Color color = Color.decode(zone.getHexColor()); |
94 final String label = String.format("%s (%dd-%dd)", zone.getZoneName(), zone.getLowerFromTo(), zone.getUpperFromTo()); | 94 final String label = String.format("%s (%dd-%dd)", zone.getZoneName(), zone.getLowerFromTo(), zone.getUpperFromTo()); |
95 dataset.addStripe(new Stripe(label, color, lower, upper)); | 95 dataset.addStripe(new Stripe(label, color, lower, upper)); |
96 } | 96 } |
114 } | 114 } |
115 | 115 |
116 throw new UnsupportedOperationException(); | 116 throw new UnsupportedOperationException(); |
117 } | 117 } |
118 | 118 |
119 private static double uefdToHeight(final CallContext context, final River river, final double station, final int uefd) { | 119 private static double uefdToHeight(final River river, final double station, final int uefd) { |
120 | 120 |
121 // FIXME: cache me | 121 final MainWstValues mainWstValues = MainWstValues.forRiver(river); |
122 final MainWstValuesCalculator mainWstValues = MainWstValuesCalculator.forRiver(context, river, null, MAIN_VALUE_MQ); | 122 final double mw = mainWstValues.getW(river, MAIN_VALUE_MQ, station); |
123 | |
124 final double mw = mainWstValues.interpolateW(station, MAIN_VALUE_MQ); | |
125 | 123 |
126 // Üfd = -70,559 ∗ ln((DGM - MW) + 0,5) + 80,711 | 124 // Üfd = -70,559 ∗ ln((DGM - MW) + 0,5) + 80,711 |
127 final double f1 = -70.559; | 125 final double f1 = -70.559; |
128 final double f2 = 88.711; | 126 final double f2 = 88.711; |
129 | 127 |