Mercurial > dive4elements > river
changeset 1225:d859c4bc6ace
HYK Importer: Check if zone coordinates in HYKs are swapped and warn the user.
flys-backend/trunk@2356 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Mon, 18 Jul 2011 16:55:32 +0000 (2011-07-18) |
parents | ca7d461a53f1 |
children | 1dbafbba50ea |
files | flys-backend/ChangeLog flys-backend/src/main/java/de/intevation/flys/importer/parsers/HYKParser.java |
diffstat | 2 files changed, 13 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/flys-backend/ChangeLog Mon Jul 18 16:43:27 2011 +0000 +++ b/flys-backend/ChangeLog Mon Jul 18 16:55:32 2011 +0000 @@ -1,3 +1,8 @@ +2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> + + * src/main/java/de/intevation/flys/importer/parsers/HYKParser.java: + Check if zone coordinates in HYKs are swapped and warn the user. + 2011-07-18 Sascha L. Teichmann <sascha.teichmann@intevation.de> * src/main/java/de/intevation/flys/model/HYK.java
--- a/flys-backend/src/main/java/de/intevation/flys/importer/parsers/HYKParser.java Mon Jul 18 16:43:27 2011 +0000 +++ b/flys-backend/src/main/java/de/intevation/flys/importer/parsers/HYKParser.java Mon Jul 18 16:55:32 2011 +0000 @@ -238,11 +238,15 @@ return false; } for (int i = 0; i < coords.length; ++i) { + BigDecimal a = coords[i]; + BigDecimal b = coords[i == coords.length-1 ? i : i+1]; + if (a.compareTo(b) > 0) { + log.warn("zone coordinates swapped in line " + + in.getLineNumber()); + BigDecimal c = a; a = b; b = c; + } ImportHYKFlowZone zone = new ImportHYKFlowZone( - formation, - fzts[i], - coords[i], - coords[i == coords.length-1 ? i : i+1]); + formation, fzts[i], a, b); formation.addFlowZone(zone); } state = State.LINE_6;