PatternGeneratorJRL::Bsplines Class Reference

Bspline class. More...

#include <Mathematics/Bsplines.hh>

Inheritance diagram for PatternGeneratorJRL::Bsplines:
Collaboration diagram for PatternGeneratorJRL::Bsplines:

List of all members.

Public Member Functions

 Bsplines (int degree)
 ~Bsplines ()
void GenerateDegree ()
Bsplines DerivativeBsplines ()
int ComputeBasisFunctions (double t)
int ComputeBasisFunctionsRecursively (double t, std::deque< double > &knot, unsigned int degree)
double Nij_t (int i, int j, double t, std::deque< double > &knot)
double ComputeBsplines (double t)
void SetDegree (int degree)
void SetControlPoints (std::vector< double > &control_points)
void SetKnotVector (std::deque< double > &knot_vector)
int GetDegree () const
std::vector< double > GetControlPoints () const
std::deque< double > GetKnotVector () const
void PrintKnotVector () const
void PrintControlPoints () const
void PrintDegree () const

Protected Attributes

unsigned int m_degree
std::vector< double > m_control_points
std::vector< double > m_derivative_control_points
std::vector< double > m_sec_derivative_control_points
std::vector< std::vector
< double > > 
m_basis_functions
std::vector< double > m_basis_functions_derivative
std::vector< double > m_basis_functions_sec_derivative
std::deque< double > m_knot

Detailed Description

Bspline class.


Constructor & Destructor Documentation

Bsplines::Bsplines ( int  degree)

Constructor

Bsplines::~Bsplines ( )

Destructor


Member Function Documentation

int Bsplines::ComputeBasisFunctionsRecursively ( double  t,
std::deque< double > &  knot,
unsigned int  degree 
)
double Bsplines::ComputeBsplines ( double  t)

Compute Bsplines

Bsplines Bsplines::DerivativeBsplines ( )

Create a Knot Vector from m_degree and m_control_points with an algo "method"

Create a derivative Bsplines

References SetControlPoints(), and SetKnotVector().

void Bsplines::GenerateDegree ( )

Caculate Degree of Bsplines from m_control_points and m_knot

std::vector< double > Bsplines::GetControlPoints ( ) const

Get Control Points

int Bsplines::GetDegree ( ) const

Get Degree

std::deque< double > Bsplines::GetKnotVector ( ) const

Get Knot Vector

double Bsplines::Nij_t ( int  i,
int  j,
double  t,
std::deque< double > &  knot 
)
void Bsplines::PrintControlPoints ( ) const
void Bsplines::PrintDegree ( ) const
void Bsplines::PrintKnotVector ( ) const
void Bsplines::SetControlPoints ( std::vector< double > &  control_points)

Set Control Points

Referenced by DerivativeBsplines().

void Bsplines::SetDegree ( int  degree)

Set Degree

void Bsplines::SetKnotVector ( std::deque< double > &  knot_vector)

Member Data Documentation

std::deque<double> PatternGeneratorJRL::Bsplines::m_knot [protected]