diff --git a/src/Mod/Part/App/BSplineCurvePyImp.cpp b/src/Mod/Part/App/BSplineCurvePyImp.cpp index c72e439d32..ed74e52b21 100644 --- a/src/Mod/Part/App/BSplineCurvePyImp.cpp +++ b/src/Mod/Part/App/BSplineCurvePyImp.cpp @@ -37,10 +37,10 @@ # include # include # include - # include #endif +#include #include #include @@ -298,9 +298,11 @@ PyObject* BSplineCurvePy::segment(PyObject * args) try { Handle(Geom_BSplineCurve) curve = Handle(Geom_BSplineCurve)::DownCast (getGeometryPtr()->handle()); - Handle(Geom_BSplineCurve) tempCurve = new Geom_BSplineCurve(*curve); + Handle(Geom_BSplineCurve) tempCurve = Handle(Geom_BSplineCurve)::DownCast + (curve->Copy()); tempCurve->Segment(u1,u2); - if (abs(tempCurve->FirstParameter()-u1)>Precision::Approximation() || abs(tempCurve->LastParameter()-u2)>Precision::Approximation()) { + if (std::abs(tempCurve->FirstParameter()-u1) > Precision::Approximation() || + std::abs(tempCurve->LastParameter()-u2) > Precision::Approximation()) { Standard_Failure::Raise("Failed to segment BSpline curve"); return 0; }