diff --git a/src/Mod/Part/App/BRepOffsetAPI_MakeOffsetFix.cpp b/src/Mod/Part/App/BRepOffsetAPI_MakeOffsetFix.cpp index 6e998fae5d..2fb9e08bee 100644 --- a/src/Mod/Part/App/BRepOffsetAPI_MakeOffsetFix.cpp +++ b/src/Mod/Part/App/BRepOffsetAPI_MakeOffsetFix.cpp @@ -141,7 +141,16 @@ void BRepOffsetAPI_MakeOffsetFix::MakeWire(TopoDS_Shape& wire) std::list edgeList; for (auto itLoc : myLocations) { - const TopTools_ListOfShape& newShapes = mkOffset.Generated(itLoc.first); + TopTools_ListOfShape newShapes = mkOffset.Generated(itLoc.first); + // Check generated shapes for the vertexes, too + TopExp_Explorer xpv(itLoc.first, TopAbs_VERTEX); + while (xpv.More()) { + TopTools_ListOfShape newEdge = mkOffset.Generated(xpv.Current()); + if (!newEdge.IsEmpty()) { + newShapes.Append(newEdge); + } + xpv.Next(); + } for (TopTools_ListIteratorOfListOfShape it(newShapes); it.More(); it.Next()) { TopoDS_Shape newShape = it.Value();