18#ifndef itkCoxDeBoorBSplineKernelFunction_h
19#define itkCoxDeBoorBSplineKernelFunction_h
22#include "vnl/vnl_real_polynomial.h"
23#include "vnl/vnl_matrix.h"
56template <
unsigned int VSplineOrder = 3,
typename TRealValueType =
double>
68 using typename Superclass::RealType;
85 itkGetConstMacro(SplineOrder,
unsigned int);
89 Evaluate(
const TRealValueType &)
const override;
138 unsigned int m_SplineOrder{};
142#ifndef ITK_MANUAL_INSTANTIATION
143# include "itkCoxDeBoorBSplineKernelFunction.hxx"
BSpline kernel used for density estimation and nonparametric regression.
void SetSplineOrder(const unsigned int)
TRealValueType EvaluateNthDerivative(const TRealValueType &, const unsigned int) const
TRealValueType EvaluateDerivative(const TRealValueType &) const
MatrixType GetShapeFunctionsInZeroToOneInterval()
~CoxDeBoorBSplineKernelFunction() override=default
vnl_real_polynomial PolynomialType
PolynomialType CoxDeBoor(const unsigned short, const VectorType, const unsigned int, const unsigned int)
void PrintSelf(std::ostream &os, Indent indent) const override
void GenerateBSplineShapeFunctions(const unsigned int)
MatrixType GetShapeFunctions()
CoxDeBoorBSplineKernelFunction()
vnl_vector< TRealValueType > VectorType
vnl_matrix< TRealValueType > MatrixType
TRealValueType Evaluate(const TRealValueType &) const override
Control indentation during Print() invocation.
Kernel used for density estimation and nonparametric regression.
Light weight base class for most itk classes.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....