# HG changeset patch # User Sascha L. Teichmann # Date 1261425497 0 # Node ID 15b8e95fa8da3a9561a86218987802b660560599 # Parent 21fbd254db71afc4b4ace7422a41e78b9324116e Horizontale Schnittprofile. Ignore invalid interpolation correctly. gnv-artifacts/trunk@473 c6561f87-3c4e-4783-a992-168aeb5c3f6f diff -r 21fbd254db71 -r 15b8e95fa8da gnv-artifacts/ChangeLog --- a/gnv-artifacts/ChangeLog Mon Dec 21 18:00:54 2009 +0000 +++ b/gnv-artifacts/ChangeLog Mon Dec 21 19:58:17 2009 +0000 @@ -1,3 +1,8 @@ +2009-12-21 Sascha L. Teichmann + + * src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java: + Ignore invalid interpolations correctly. + 2009-12-21 Sascha L. Teichmann * src/main/java/de/intevation/gnv/raster/Raster.java: New. Models 2D double diff -r 21fbd254db71 -r 15b8e95fa8da gnv-artifacts/src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java --- a/gnv-artifacts/src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java Mon Dec 21 18:00:54 2009 +0000 +++ b/gnv-artifacts/src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java Mon Dec 21 19:58:17 2009 +0000 @@ -353,6 +353,14 @@ } public void interpolated(Coordinate coordinate, boolean success) { + + if (!success && !lastWasSuccess) { + // only insert null if last was valid. + // This prevents flooding the result set with nulls + // if interpolating over a large gap. + return; + } + DefaultResult result = new DefaultResult(descriptor); ResultDescriptor pd = prototyp.getResultDescriptor(); @@ -366,15 +374,9 @@ result.addColumnValue(j, WKTUtils.toWKT(coordinate)); } else if (colname.equals("YORDINATE")) { - if (success) { - result.addColumnValue(j, Double.valueOf(coordinate.z)); - } - else if (lastWasSuccess) { - // only insert null if last was valid. - // This prevents flooding the result set with nulls - // if interpolating over a large gap. - result.addColumnValue(j, null); - } + result.addColumnValue(j, success + ? Double.valueOf(coordinate.z) + : null); } else { result.addColumnValue(j, prototyp.getObject(i));