Lines Matching refs:degree
31 * degree for optimization purposes (would result in stack allocation
40 enum { Degree = _Degree /*!< The spline curve's degree. */ };
56 * For Splines with dynamic degree, the resulting degree will be 0.
59 : m_knots(1, (Degree==Dynamic ? 2 : 2*Degree+2))
60 , m_ctrls(ControlPointVectorType::Zero(2,(Degree==Dynamic ? 1 : Degree+1)))
64 enum { MinDegree = (Degree==Dynamic ? 0 : Degree) };
137 * spline degree.
177 * \brief Returns the spline degree.
179 DenseIndex degree() const;
190 static DenseIndex Span(typename SplineTraits<Spline>::Scalar u, DenseIndex degree, const typename SplineTraits<Spline>::KnotVectorType& knots);
201 * \param degree The degree of the underlying spline.
204 static BasisVectorType BasisFunctions(Scalar u, DenseIndex degree, const KnotVectorType& knots);
215 DenseIndex degree,
219 if (u <= knots(0)) return degree;
220 const Scalar* pos = std::upper_bound(knots.data()+degree-1, knots.data()+knots.size()-degree-1, u);
228 DenseIndex degree,
233 const DenseIndex p = degree;
234 const DenseIndex i = Spline::Span(u, degree, knots);
241 VectorBlock<BasisVectorType,Degree>(left,1,p) = u - VectorBlock<const KnotVectorType,Degree>(U,i+1-p,p).reverse();
242 VectorBlock<BasisVectorType,Degree>(right,1,p) = VectorBlock<const KnotVectorType,Degree>(U,i+1,p) - u;
261 DenseIndex Spline<_Scalar, _Dim, _Degree>::degree() const
272 return Spline::Span(u, degree(), knots());
281 const DenseIndex p = degree();
302 const DenseIndex p = spline.degree();
344 return Spline::BasisFunctions(u, degree(), knots());
360 const DenseIndex p = spline.degree();