# HG changeset patch # User Andre Heinecke # Date 1370617766 -7200 # Node ID 02ea1c3fba8c96439a63e2eb3dd0fcf7d6d3809c # Parent a8613826bcac26bca327f354da4b7dd10d7fcb09 Fix export at river km's for issue1275 Rrenkert explained that the intention was to scale the Waterlevels because they should be in centimeters at a gauge and in meters otherwise. This appears very strange to me and should be clarified. diff -r a8613826bcac -r 02ea1c3fba8c artifacts/src/main/java/org/dive4elements/river/exports/ATExporter.java --- a/artifacts/src/main/java/org/dive4elements/river/exports/ATExporter.java Fri Jun 07 13:06:20 2013 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/exports/ATExporter.java Fri Jun 07 17:09:26 2013 +0200 @@ -111,7 +111,7 @@ gauge.getName(), gauge.getDatum(), interval.getStartTime(), - 100d); + false); } else { // at km @@ -123,7 +123,7 @@ null, null, null, - 0d); + true); } } diff -r a8613826bcac -r 02ea1c3fba8c artifacts/src/main/java/org/dive4elements/river/exports/ATWriter.java --- a/artifacts/src/main/java/org/dive4elements/river/exports/ATWriter.java Fri Jun 07 13:06:20 2013 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/exports/ATWriter.java Fri Jun 07 17:09:26 2013 +0200 @@ -160,7 +160,7 @@ String gName, BigDecimal datum, Date date, - double scale) + boolean wOutUnitIsMeter) throws IOException { PrintWriter out = new PrintWriter(writer); @@ -186,7 +186,13 @@ int col = 0; for (double w = startW; w <= maxW; w += 0.01) { if (col == 0) { - out.printf(Locale.US, "%8d", (int)Math.round(w * scale)); + if (wOutUnitIsMeter) { + // For some crazy reason W's at a gauge should be in the + // unit but W's exported elsewhere should be in Meter + out.printf(Locale.US, "%5.2f", w); + } else { + out.printf(Locale.US, "%8d", (int)Math.round(w * 100d)); + } } if (w < minW) {