18 #ifndef itkCoxDeBoorBSplineKernelFunction_h
19 #define itkCoxDeBoorBSplineKernelFunction_h
22 #include "vnl/vnl_real_polynomial.h"
23 #include "vnl/vnl_matrix.h"
56 template<
unsigned int VSplineOrder = 3,
typename TRealValueType =
double>
67 typedef typename Superclass::RealType
RealType;
80 void SetSplineOrder(
const unsigned int );
83 itkGetConstMacro( SplineOrder,
unsigned int );
86 TRealValueType Evaluate(
const TRealValueType & ) const ITK_OVERRIDE;
89 TRealValueType EvaluateDerivative( const TRealValueType & ) const;
92 TRealValueType EvaluateNthDerivative( const TRealValueType &, const
unsigned int ) const;
105 MatrixType GetShapeFunctionsInZeroToOneInterval();
109 virtual ~CoxDeBoorBSplineKernelFunction() ITK_OVERRIDE;
110 void PrintSelf( std::ostream & os,
Indent indent ) const ITK_OVERRIDE;
113 ITK_DISALLOW_COPY_AND_ASSIGN(CoxDeBoorBSplineKernelFunction);
119 void GenerateBSplineShapeFunctions( const
unsigned int );
128 const
unsigned int, const
unsigned int );
131 unsigned int m_SplineOrder;
135 #ifndef ITK_MANUAL_INSTANTIATION
136 #include "itkCoxDeBoorBSplineKernelFunction.hxx"
vnl_real_polynomial PolynomialType
KernelFunctionBase< TRealValueType > Superclass
Kernel used for density estimation and nonparameteric regression.
vnl_matrix< TRealValueType > MatrixType
SmartPointer< Self > Pointer
BSpline kernel used for density estimation and nonparameteric regression.
SmartPointer< const Self > ConstPointer
vnl_vector< TRealValueType > VectorType
CoxDeBoorBSplineKernelFunction Self
Control indentation during Print() invocation.
Superclass::RealType RealType