Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineCalculator.java @ 9375:a0a2e68a1e11
Fixed: cm rounding in S-Info flow depth/tkh and U-Info salix via BigDecimal, half_even mode
author | mschaefer |
---|---|
date | Fri, 03 Aug 2018 17:00:45 +0200 |
parents | 6f7e92c16050 |
children | 8ae7137b67d7 |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineCalculator.java Thu Aug 02 20:14:26 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/uinfo/salix/SalixLineCalculator.java Fri Aug 03 17:00:45 2018 +0200 @@ -9,6 +9,7 @@ */ package org.dive4elements.river.artifacts.uinfo.salix; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -42,6 +43,7 @@ */ final class SalixLineCalculator { + private static final BigDecimal SALIX_DISTANCE = new BigDecimal("2.31"); private final List<ResultRow> rows = new ArrayList<>(); private final RiverInfoProvider riverInfoProvider; @@ -181,14 +183,14 @@ * Calculates the salix value */ private double calcSalix(final double mhw, final double mw) { - return Formatter.roundW(mhw) - 2.31 - Formatter.roundW(mw); + return Formatter.roundW(mhw).subtract(SALIX_DISTANCE).subtract(Formatter.roundW(mw)).doubleValue(); } /** * Calculates the inverse MW-MNW difference */ private double calcMwmnw(final double mw, final double mnw) { - return Formatter.roundW(mnw) - Formatter.roundW(mw); + return Formatter.roundW(mnw).subtract(Formatter.roundW(mw)).doubleValue(); } /**