diff gnv-artifacts/src/main/java/de/intevation/gnv/state/profile/horizontal/HorizontalProfileMeshCrossOutputState.java @ 425:15b8e95fa8da

Horizontale Schnittprofile. Ignore invalid interpolation correctly. gnv-artifacts/trunk@473 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Mon, 21 Dec 2009 19:58:17 +0000
parents 2402173a1490
children bed9735adf84
line wrap: on
line diff
--- 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));

http://dive4elements.wald.intevation.org