@numericelements/knot-sequence
Version:
A library for generating and manipulating knot sequences for b-spline curves and surfaces
15 lines (12 loc) • 923 B
JavaScript
import { IncreasingOpenKnotSequenceClosedCurve } from '../IncreasingOpenKnotSequenceClosedCurve.js';
import { INCREASINGOPENKNOTSEQUENCE_UPTOC0DISCONTINUITY_CLOSEDCURVEALLKNOTS, INCREASINGOPENKNOTSEQUENCECLOSEDCURVEALLKNOTS } from '../KnotSequenceConstructorInterface.js';
function fromStrictlyIncreasingToIncreasingKnotSequenceCC(strictIncSeq) {
const knotAbscissae = strictIncSeq.toIncreasingSeqOfAbscissae();
if (strictIncSeq.isSequenceUpToC0Discontinuity) {
return new IncreasingOpenKnotSequenceClosedCurve(strictIncSeq.maxMultiplicityOrder, { type: INCREASINGOPENKNOTSEQUENCE_UPTOC0DISCONTINUITY_CLOSEDCURVEALLKNOTS, knots: knotAbscissae });
}
else {
return new IncreasingOpenKnotSequenceClosedCurve(strictIncSeq.maxMultiplicityOrder, { type: INCREASINGOPENKNOTSEQUENCECLOSEDCURVEALLKNOTS, knots: knotAbscissae });
}
}
export { fromStrictlyIncreasingToIncreasingKnotSequenceCC };