diff --git a/src/Mod/Part/App/AppPartPy.cpp b/src/Mod/Part/App/AppPartPy.cpp index b63fda368..9e0851069 100644 --- a/src/Mod/Part/App/AppPartPy.cpp +++ b/src/Mod/Part/App/AppPartPy.cpp @@ -33,6 +33,7 @@ # include # include # include +# include # include # include # include @@ -526,7 +527,8 @@ static PyObject * makeSolid(PyObject *self, PyObject *args) if (count == 0) Standard_Failure::Raise("No shells found in shape"); - const TopoDS_Solid& solid = mkSolid.Solid(); + TopoDS_Solid solid = mkSolid.Solid(); + BRepLib::OrientClosedSolid(solid); return new TopoShapeSolidPy(new TopoShape(solid)); } catch (Standard_Failure) { diff --git a/src/Mod/Part/App/TopoShapeSolidPyImp.cpp b/src/Mod/Part/App/TopoShapeSolidPyImp.cpp index 15ef23bbd..76ff4e73c 100644 --- a/src/Mod/Part/App/TopoShapeSolidPyImp.cpp +++ b/src/Mod/Part/App/TopoShapeSolidPyImp.cpp @@ -32,6 +32,7 @@ #include #include #include +#include #include #include #include @@ -90,7 +91,8 @@ int TopoShapeSolidPy::PyInit(PyObject* args, PyObject* /*kwd*/) if (count == 0) Standard_Failure::Raise("No shells found in shape"); - const TopoDS_Solid& solid = mkSolid.Solid(); + TopoDS_Solid solid = mkSolid.Solid(); + BRepLib::OrientClosedSolid(solid); getTopoShapePtr()->_Shape = solid; } catch (Standard_Failure) {