UNPKG

@numericelements/knot-sequence

Version:

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

17 lines (13 loc) 1.21 kB
'use strict'; var KnotSequenceConstructorInterface = require('../KnotSequenceConstructorInterface.cjs'); var StrictlyIncreasingOpenKnotSequenceClosedCurve = require('../StrictlyIncreasingOpenKnotSequenceClosedCurve.cjs'); function fromIncreasingToStrictlyIncreasingOpenKnotSequenceCC(increasingSeq) { const maxMultOrder = increasingSeq.maxMultiplicityOrder; if (increasingSeq.isSequenceUpToC0Discontinuity) { return new StrictlyIncreasingOpenKnotSequenceClosedCurve.StrictlyIncreasingOpenKnotSequenceClosedCurve(maxMultOrder, { type: KnotSequenceConstructorInterface.STRICTLYINCREASINGOPENKNOTSEQUENCE_UPTOC0DISCONTINUITY_CLOSEDCURVEALLKNOTS, knots: increasingSeq.distinctAbscissae(), multiplicities: increasingSeq.multiplicities() }); } else { return new StrictlyIncreasingOpenKnotSequenceClosedCurve.StrictlyIncreasingOpenKnotSequenceClosedCurve(maxMultOrder, { type: KnotSequenceConstructorInterface.STRICTLYINCREASINGOPENKNOTSEQUENCECLOSEDCURVEALLKNOTS, knots: increasingSeq.distinctAbscissae(), multiplicities: increasingSeq.multiplicities() }); } } exports.fromIncreasingToStrictlyIncreasingOpenKnotSequenceCC = fromIncreasingToStrictlyIncreasingOpenKnotSequenceCC;