Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions

pcl::BivariatePolynomialT< real > Class Template Reference
[Module common]

This represents a bivariate polynomial and provides some functionality for it. More...

#include <pcl/common/bivariate_polynomial.h>

List of all members.

Public Member Functions

 BivariatePolynomialT (int new_degree=0)
 Constructor.
 BivariatePolynomialT (const BivariatePolynomialT &other)
 Copy constructor.
 ~BivariatePolynomialT ()
 Destructor.
BivariatePolynomialToperator= (const BivariatePolynomialT &other)
 = operator
void setDegree (int new_degree)
 Initialize members to default values.
unsigned int getNoOfParameters () const
 How many parametes has a bivariate polynomial with this degree.
real getValue (real x, real y) const
 Calculate the value of the polynomial at the given point.
void calculateGradient (bool forceRecalc=false)
 Calculate the gradient of this polynomial If forceRecalc is false, it will do nothing when the gradient already exists.
void getValueOfGradient (real x, real y, real &gradX, real &gradY)
 Calculate the value of the gradient at the given point.
void findCriticalPoints (std::vector< real > &x_values, std::vector< real > &y_values, std::vector< int > &types) const
 Returns critical points of the polynomial.
void writeBinary (std::ostream &os) const
 write as binary to a stream
void writeBinary (const char *filename) const
 write as binary into a file
void readBinary (std::istream &os)
 read binary from a stream
void readBinary (const char *filename)
 read binary from a file

Static Public Member Functions

static unsigned int getNoOfParametersFromDegree (int n)
 How many parametes has a bivariate polynomial of the given degree.

Public Attributes

int degree
real * parameters
BivariatePolynomialT< real > * gradient_x
BivariatePolynomialT< real > * gradient_y

Protected Member Functions

void memoryCleanUp ()
 Delete all members.
void deepCopy (const BivariatePolynomialT< real > &other)
 Create a deep copy of the given polynomial.

Detailed Description

template<typename real>
class pcl::BivariatePolynomialT< real >

This represents a bivariate polynomial and provides some functionality for it.

Author:
Bastian Steder

Definition at line 14 of file bivariate_polynomial.h.


Constructor & Destructor Documentation

template<typename real >
pcl::BivariatePolynomialT< real >::BivariatePolynomialT ( int  new_degree = 0  ) 

Constructor.

Definition at line 2 of file bivariate_polynomial.hpp.

template<typename real >
pcl::BivariatePolynomialT< real >::BivariatePolynomialT ( const BivariatePolynomialT< real > &  other  ) 

Copy constructor.

Definition at line 9 of file bivariate_polynomial.hpp.

template<typename real >
pcl::BivariatePolynomialT< real >::~BivariatePolynomialT (  ) 

Destructor.

Definition at line 16 of file bivariate_polynomial.hpp.


Member Function Documentation

template<typename real >
void pcl::BivariatePolynomialT< real >::calculateGradient ( bool  forceRecalc = false  ) 

Calculate the gradient of this polynomial If forceRecalc is false, it will do nothing when the gradient already exists.

Definition at line 83 of file bivariate_polynomial.hpp.

template<typename real >
void pcl::BivariatePolynomialT< real >::deepCopy ( const BivariatePolynomialT< real > &  other  )  [protected]

Create a deep copy of the given polynomial.

Definition at line 53 of file bivariate_polynomial.hpp.

template<typename real >
void pcl::BivariatePolynomialT< real >::findCriticalPoints ( std::vector< real > &  x_values,
std::vector< real > &  y_values,
std::vector< int > &  types 
) const

Returns critical points of the polynomial.

type can be 0=maximum, 1=minimum, or 2=saddle point !!Currently only implemented for degree 2!!

Definition at line 150 of file bivariate_polynomial.hpp.

template<typename real>
unsigned int pcl::BivariatePolynomialT< real >::getNoOfParameters (  )  const [inline]

How many parametes has a bivariate polynomial with this degree.

Definition at line 37 of file bivariate_polynomial.h.

template<typename real>
static unsigned int pcl::BivariatePolynomialT< real >::getNoOfParametersFromDegree ( int  n  )  [inline, static]

How many parametes has a bivariate polynomial of the given degree.

Definition at line 75 of file bivariate_polynomial.h.

template<typename real >
real pcl::BivariatePolynomialT< real >::getValue ( real  x,
real  y 
) const

Calculate the value of the polynomial at the given point.

Definition at line 114 of file bivariate_polynomial.hpp.

template<typename real >
void pcl::BivariatePolynomialT< real >::getValueOfGradient ( real  x,
real  y,
real &  gradX,
real &  gradY 
)

Calculate the value of the gradient at the given point.

Definition at line 134 of file bivariate_polynomial.hpp.

template<typename real >
void pcl::BivariatePolynomialT< real >::memoryCleanUp (  )  [protected]

Delete all members.

Definition at line 44 of file bivariate_polynomial.hpp.

template<typename real>
BivariatePolynomialT& pcl::BivariatePolynomialT< real >::operator= ( const BivariatePolynomialT< real > &  other  )  [inline]

= operator

Definition at line 28 of file bivariate_polynomial.h.

template<typename real >
void pcl::BivariatePolynomialT< real >::readBinary ( std::istream &  os  ) 

read binary from a stream

Definition at line 242 of file bivariate_polynomial.hpp.

template<typename real >
void pcl::BivariatePolynomialT< real >::readBinary ( const char *  filename  ) 

read binary from a file

Definition at line 253 of file bivariate_polynomial.hpp.

template<typename real >
void pcl::BivariatePolynomialT< real >::setDegree ( int  new_degree  ) 

Initialize members to default values.

Definition at line 23 of file bivariate_polynomial.hpp.

template<typename real >
void pcl::BivariatePolynomialT< real >::writeBinary ( std::ostream &  os  )  const

write as binary to a stream

Definition at line 225 of file bivariate_polynomial.hpp.

template<typename real >
void pcl::BivariatePolynomialT< real >::writeBinary ( const char *  filename  )  const

write as binary into a file

Definition at line 234 of file bivariate_polynomial.hpp.


Member Data Documentation

template<typename real>
int pcl::BivariatePolynomialT< real >::degree

Definition at line 78 of file bivariate_polynomial.h.

template<typename real>
BivariatePolynomialT<real>* pcl::BivariatePolynomialT< real >::gradient_x

Definition at line 80 of file bivariate_polynomial.h.

template<typename real>
BivariatePolynomialT<real> * pcl::BivariatePolynomialT< real >::gradient_y

Definition at line 80 of file bivariate_polynomial.h.

template<typename real>
real* pcl::BivariatePolynomialT< real >::parameters

Definition at line 79 of file bivariate_polynomial.h.


The documentation for this class was generated from the following files: