diff --git a/src/Mod/PartDesign/App/FeatureExtrude.cpp b/src/Mod/PartDesign/App/FeatureExtrude.cpp index d3fd2304b9..41f36ed19f 100644 --- a/src/Mod/PartDesign/App/FeatureExtrude.cpp +++ b/src/Mod/PartDesign/App/FeatureExtrude.cpp @@ -494,7 +494,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir, offset1, makeface, - base + base, + invObjLoc ); prisms.push_back(prism1); } @@ -517,7 +518,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir, offset1, makeface, - base + base, + invObjLoc ); if (!prism1.isNull() && !prism1.getShape().IsNull()) { prisms.push_back(prism1); @@ -535,7 +537,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir2, offset1, makeface, - base + base, + invObjLoc ); if (!prism2.isNull() && !prism2.getShape().IsNull()) { prisms.push_back(prism2); @@ -561,7 +564,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir, offset1, makeface, - base + base, + invObjLoc ); if (!prism1.isNull() && !prism1.getShape().IsNull()) { prisms.push_back(prism1); @@ -580,7 +584,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir, offset1, makeface, - base + base, + invObjLoc ); prisms.push_back(prism1); @@ -624,7 +629,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir2, offset2, makeface, - base + base, + invObjLoc ); if (!prism.isNull() && !prism.getShape().IsNull()) { prisms.push_back(prism); @@ -646,7 +652,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir, offset1, makeface, - base + base, + invObjLoc ); if (!prism.isNull() && !prism.getShape().IsNull()) { prisms.push_back(prism); @@ -663,7 +670,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir, offset1, makeface, - base + base, + invObjLoc ); if (!prism1.isNull() && !prism1.getShape().IsNull()) { prisms.push_back(prism1); @@ -680,7 +688,8 @@ App::DocumentObjectExecReturn* FeatureExtrude::buildExtrusion(ExtrudeOptions opt dir2, offset2, makeface, - base + base, + invObjLoc ); if (!prism2.isNull() && !prism2.getShape().IsNull()) { prisms.push_back(prism2); @@ -830,7 +839,8 @@ TopoShape FeatureExtrude::generateSingleExtrusionSide( gp_Dir dir, double offsetVal, bool makeFace, - const TopoShape& base + const TopoShape& base, + TopLoc_Location& invObjLoc ) { TopoShape prism(0, getDocument()->getStringHasher()); diff --git a/src/Mod/PartDesign/App/FeatureExtrude.h b/src/Mod/PartDesign/App/FeatureExtrude.h index 2fe73a8531..70cdd827fa 100644 --- a/src/Mod/PartDesign/App/FeatureExtrude.h +++ b/src/Mod/PartDesign/App/FeatureExtrude.h @@ -31,6 +31,7 @@ class gp_Dir; class TopoDS_Face; class TopoDS_Shape; +class TopLoc_Location; namespace PartDesign { @@ -115,7 +116,8 @@ protected: gp_Dir dir, double offsetVal, bool makeFace, - const TopoShape& base // The base shape for context (global CS) + const TopoShape& base, // The base shape for context (global CS) + TopLoc_Location& invObjLoc // MUST be passed. Cannot be re-accessed, see #26677 ); };