From a1b8686627a4e3e1ead3abcdbe5f936ca7982c02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Br=C3=A6strup=20Sayoc?= Date: Wed, 7 Sep 2022 15:14:39 +0200 Subject: [PATCH] [TechDraw] Fix bug in DrawUtil::isZeroEdge Bug originating from b7a655f804fa11d3ec8d8a1ce2b36c75dbe48c2f --- src/Mod/TechDraw/App/DrawUtil.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/Mod/TechDraw/App/DrawUtil.cpp b/src/Mod/TechDraw/App/DrawUtil.cpp index 4f7607605c..6c6512bd0a 100644 --- a/src/Mod/TechDraw/App/DrawUtil.cpp +++ b/src/Mod/TechDraw/App/DrawUtil.cpp @@ -156,15 +156,18 @@ bool DrawUtil::isZeroEdge(TopoDS_Edge e, double tolerance) { TopoDS_Vertex vStart = TopExp::FirstVertex(e); TopoDS_Vertex vEnd = TopExp::LastVertex(e); - if (isSamePoint(vStart, vEnd, tolerance)) { - //closed edge will have same V's but non-zero length - BRepAdaptor_Curve adapt(e); - double len = GCPnts_AbscissaPoint::Length(adapt, Precision::Confusion()); - if (len > tolerance) { - return false; - } + if (!isSamePoint(vStart, vEnd, tolerance)) { + return false; } - return false; + + //closed edge will have same V's but non-zero length + BRepAdaptor_Curve adapt(e); + double len = GCPnts_AbscissaPoint::Length(adapt, Precision::Confusion()); + if (len > tolerance) { + return false; + } + + return true; } double DrawUtil::simpleMinDist(TopoDS_Shape s1, TopoDS_Shape s2) {