Part: move BiArcs algorithm to its own class

This commit is contained in:
wmayer
2022-06-28 12:42:15 +02:00
parent 523d364c92
commit 2c3ef52dba
5 changed files with 92 additions and 20 deletions

View File

@@ -124,6 +124,7 @@
#include <Mod/Part/App/OffsetCurvePy.h>
#include <Mod/Part/App/ParabolaPy.h>
#include <Mod/Part/App/BezierSurfacePy.h>
#include <Mod/Part/App/BSplineCurveBiArcs.h>
#include <Mod/Part/App/BSplineSurfacePy.h>
#include <Mod/Part/App/ConePy.h>
#include <Mod/Part/App/CylinderPy.h>
@@ -1205,6 +1206,12 @@ void GeomBSplineCurve::setPole(int index, const Base::Vector3d& pole, double wei
}
}
std::list<Geometry*> GeomBSplineCurve::toBiArcs(double tolerance) const
{
BSplineCurveBiArcs arcs(this->myCurve);
return arcs.toBiArcs(tolerance);
}
void GeomBSplineCurve::workAroundOCCTBug(const std::vector<double>& weights)
{
// If during assignment of weights (during the for loop below) all weights