UNPKG

@numericelements/knot-sequence

Version:

A library for generating and manipulating knot sequences for b-spline curves and surfaces

14 lines (11 loc) 1.1 kB
import { STRICTLYINCREASINGOPENKNOTSEQUENCECLOSEDCURVEALLKNOTS } from '../KnotSequenceConstructorInterface.js'; import { StrictlyIncreasingOpenKnotSequenceClosedCurve } from '../StrictlyIncreasingOpenKnotSequenceClosedCurve.js'; import { prepareStrictlyIncreasingOpenKnotSeqCCfromStrictlyIncreasingPeriodicKnotSeq } from './prepareStrictlyIncreasingOpenKnotSeqCCfromStrictlyIncreasingPeriodicKnotSeq.js'; function fromStrictlyIncreasingPeriodicToStrictlyIncreasingOpenKnotSequenceCC(strictIncSeq) { const maxMultOrder = strictIncSeq.maxMultiplicityOrder; const openSeqParams = prepareStrictlyIncreasingOpenKnotSeqCCfromStrictlyIncreasingPeriodicKnotSeq(strictIncSeq); const knotsOpenSequence = openSeqParams.knots; const multiplicitiesOpenSequence = openSeqParams.multiplicities; return new StrictlyIncreasingOpenKnotSequenceClosedCurve(maxMultOrder + 1, { type: STRICTLYINCREASINGOPENKNOTSEQUENCECLOSEDCURVEALLKNOTS, knots: knotsOpenSequence, multiplicities: multiplicitiesOpenSequence }); } export { fromStrictlyIncreasingPeriodicToStrictlyIncreasingOpenKnotSequenceCC };