]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.plant3d/src/org/simantics/plant3d/geometry/VerticalTankGeometryProvider.java
Check parameter inputs in geometry providers.
[simantics/3d.git] / org.simantics.plant3d / src / org / simantics / plant3d / geometry / VerticalTankGeometryProvider.java
index 5cb078e0714511a78999020bb49c051fe9d2cc12..c29b3bcac7666886751dbb3c29c79fd1e3ac3fe9 100644 (file)
@@ -15,6 +15,7 @@ import org.jcae.opencascade.jni.TopoDS_Face;
 import org.jcae.opencascade.jni.TopoDS_Shape;
 import org.jcae.opencascade.jni.TopoDS_Wire;
 import org.simantics.db.Resource;
+import org.simantics.g3d.math.MathTools;
 
 public class VerticalTankGeometryProvider extends BuiltinGeometryProvider  {
        
@@ -27,6 +28,8 @@ public class VerticalTankGeometryProvider extends BuiltinGeometryProvider  {
        
        @Override
        public Collection<TopoDS_Shape> getModel() throws Exception {
+               if (radius < MathTools.NEAR_ZERO || height < MathTools.NEAR_ZERO)
+                       return Collections.emptyList();
                
                double p0[] = new double[]{       0.0,     height,0.0};
                double p1[] = new double[]{radius*0.6,height*0.98,0.0};