[Part] Support insertion of knots in b-splines

This commit is contained in:
Ajinkya Dahale
2021-12-23 23:11:21 -05:00
committed by abdullahtahiriyo
parent 7a85baa7eb
commit ff2e246a55
2 changed files with 13 additions and 0 deletions

View File

@@ -1530,6 +1530,18 @@ void GeomBSplineCurve::increaseMultiplicity(int index, int multiplicity)
curve->IncreaseMultiplicity(index, multiplicity);
return;
}
catch (Standard_Failure& e) {
THROWM(Base::CADKernelError,e.GetMessageString())
}
}
void GeomBSplineCurve::insertKnot(double param, int multiplicity)
{
try {
Handle(Geom_BSplineCurve) curve = Handle(Geom_BSplineCurve)::DownCast(this->handle());
curve->InsertKnot(param, multiplicity);
return;
}
catch (Standard_Failure& e) {
THROWM(Base::CADKernelError,e.GetMessageString())
}

View File

@@ -308,6 +308,7 @@ public:
bool approximate(double tol3d, int maxSegments, int maxDegree, int continuity);
void increaseMultiplicity(int index, int multiplicity);
void insertKnot(double param, int multiplicity);
bool removeKnot(int index, int multiplicity, double tolerance = Precision::PConfusion());
void Trim(double u, double v);