Point Cloud Library (PCL)
1.11.1-dev
|
29 #ifndef BSPLINE_DATA_INCLUDED
30 #define BSPLINE_DATA_INCLUDED
33 #include "ppolynomial.h"
44 template<
int Degree ,
class Real >
81 virtual void setValueTables(
int flags,
double valueSmooth,
double normalSmooth);
84 void setSampleSpan(
int idx ,
int& start ,
int& end ,
double smooth=0 )
const;
95 void set(
int maxDepth ,
bool useDotRatios=
true ,
bool reflectBoundary=
false );
97 inline int Index(
int i1 ,
int i2 )
const;
102 template<
int Degree >
110 template<
int Degree >
113 static const int _off = (Degree+1)/2;
114 void _addLeft (
int offset ,
int boundary );
115 void _addRight(
int offset ,
int boundary );
134 for(
int i=0 ; i<this->size() ; i++ )
137 for(
int j=0 ; j<=Degree ; j++ ) printf(
" %d" , (*
this)[i][j] );
149 #include "bspline_data.hpp"
151 #endif // BSPLINE_DATA_INCLUDED
virtual void clearDotTables(int flags)
void upSample(BSplineElements &high) const
const static int DD_DOT_FLAG
PPolynomial< Degree > leftBaseFunction
virtual void setValueTables(int flags, double smooth=0)
void _addLeft(int offset, int boundary)
PPolynomial< Degree-1 > dRightBaseFunction
int Index(int i1, int i2) const
const static int D_VALUE_FLAG
BSplineComponents rightBSpline
BSplineComponents baseBSpline
PPolynomial< Degree > rightBaseFunction
PPolynomial< Degree > * baseFunctions
BSplineElementCoefficients(void)
BSplineComponents * baseBSplines
int & operator[](int idx)
void _addRight(int offset, int boundary)
const static int VALUE_FLAG
Polynomial< Degree > polys[Degree+1]
BSplineComponents scale(double s) const
const static int VV_DOT_FLAG
void SetBSplineElementIntegrals(double integrals[Degree1+1][Degree2+1])
void setSampleSpan(int idx, int &start, int &end, double smooth=0) const
const static int DV_DOT_FLAG
BSplineComponents shift(double s) const
virtual void clearValueTables(void)
BSplineComponents leftBSpline
PPolynomial< Degree > baseFunction
const int & operator[](int idx) const
PPolynomial< Degree-1 > dBaseFunction
virtual void setDotTables(int flags)
Polynomial< Degree > & operator[](int idx)
void differentiate(BSplineElements< Degree-1 > &d) const
void set(int maxDepth, bool useDotRatios=true, bool reflectBoundary=false)
static int SymmetricIndex(int i1, int i2)
PPolynomial< Degree-1 > dLeftBaseFunction