UNPKG

@numericelements/knot-sequence

Version:

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

15 lines (12 loc) 997 B
import { STRICTLYINCREASINGOPENKNOTSEQUENCE_UPTOC0DISCONTINUITY, STRICTLYINCREASINGOPENKNOTSEQUENCE } from '../KnotSequenceConstructorInterface.js'; import { StrictlyIncreasingOpenKnotSequenceOpenCurve } from '../StrictlyIncreasingOpenKnotSequenceOpenCurve.js'; function fromIncreasingToStrictlyIncreasingOpenKnotSequenceOC(increasingSeq) { const maxMultOrder = increasingSeq.maxMultiplicityOrder; if (increasingSeq.isSequenceUpToC0Discontinuity) { return new StrictlyIncreasingOpenKnotSequenceOpenCurve(maxMultOrder, { type: STRICTLYINCREASINGOPENKNOTSEQUENCE_UPTOC0DISCONTINUITY, knots: increasingSeq.distinctAbscissae(), multiplicities: increasingSeq.multiplicities() }); } else { return new StrictlyIncreasingOpenKnotSequenceOpenCurve(maxMultOrder, { type: STRICTLYINCREASINGOPENKNOTSEQUENCE, knots: increasingSeq.distinctAbscissae(), multiplicities: increasingSeq.multiplicities() }); } } export { fromIncreasingToStrictlyIncreasingOpenKnotSequenceOC };