[Part] Do not assume default period in B-spline

This commit is contained in:
Ajinkya Dahale
2024-06-02 23:07:28 +05:30
parent e1c3dd2fea
commit dbef3747eb

View File

@@ -1894,19 +1894,10 @@ void GeomBSplineCurve::Trim(double u, double v)
};
try {
if(!isPeriodic()) {
splitUnwrappedBSpline(u, v);
}
else { // periodic
if( v < u ) { // wraps over origin
v = v + 1.0; // v needs one extra lap (1.0)
splitUnwrappedBSpline(u, v);
}
else {
splitUnwrappedBSpline(u, v);
}
if (isPeriodic() && (v < u)) {
v = v + (getLastParameter() - getFirstParameter()); // v needs one extra lap
}
splitUnwrappedBSpline(u, v);
}
catch (Standard_Failure& e) {
THROWM(Base::CADKernelError,e.GetMessageString())