X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.plant3d%2Fsrc%2Forg%2Fsimantics%2Fplant3d%2Fgeometry%2FNozzleGeometryProvider.java;h=0b0f4884a1554a9fe45bca11123530aa888973d9;hb=refs%2Fchanges%2F87%2F4287%2F1;hp=cdfe73ccd4bcd1ab31ea829e3f0e86bdcba87e8d;hpb=22bb24d2a7e26c70b0dd4c57080f2c25ac3d40a8;p=simantics%2F3d.git diff --git a/org.simantics.plant3d/src/org/simantics/plant3d/geometry/NozzleGeometryProvider.java b/org.simantics.plant3d/src/org/simantics/plant3d/geometry/NozzleGeometryProvider.java index cdfe73cc..0b0f4884 100644 --- a/org.simantics.plant3d/src/org/simantics/plant3d/geometry/NozzleGeometryProvider.java +++ b/org.simantics.plant3d/src/org/simantics/plant3d/geometry/NozzleGeometryProvider.java @@ -6,6 +6,7 @@ import java.util.Map; import org.jcae.opencascade.jni.TopoDS_Shape; import org.simantics.db.Resource; +import org.simantics.g3d.math.MathTools; import org.simantics.opencascade.OccTriangulator; public class NozzleGeometryProvider extends BuiltinGeometryProvider { @@ -19,6 +20,8 @@ public class NozzleGeometryProvider extends BuiltinGeometryProvider { @Override public Collection getModel() throws Exception { + if (radius < MathTools.NEAR_ZERO || length < MathTools.NEAR_ZERO) + return Collections.emptyList(); TopoDS_Shape shape = OccTriangulator.makeCylinder(new double[] {-length, 0.0, 0.0}, new double[] { 1.0, 0.0, 0.0 }, radius, length); TopoDS_Shape shape2 = OccTriangulator.makeCylinder(new double[] {-length*0.25, 0.0, 0.0}, new double[] { 1.0, 0.0, 0.0 }, radius*1.2, length*0.25); TopoDS_Shape shape3 = OccTriangulator.makeCompound(new TopoDS_Shape[]{shape,shape2});