|
Point Cloud Library (PCL)
1.15.1-dev
|
This represents a bivariate polynomial and provides some functionality for it. More...
#include <pcl/common/bivariate_polynomial.h>
Public Member Functions | |
| BivariatePolynomialT (int new_degree=0) | |
| Constructor. More... | |
| BivariatePolynomialT (const BivariatePolynomialT &other) | |
| Copy constructor. More... | |
| ~BivariatePolynomialT () | |
| Destructor. More... | |
| BivariatePolynomialT & | operator= (const BivariatePolynomialT &other) |
| = operator More... | |
| void | setDegree (int new_degree) |
| Initialize members to default values. More... | |
| unsigned int | getNoOfParameters () const |
| How many parameters has a bivariate polynomial with this degree. More... | |
| real | getValue (real x, real y) const |
| Calculate the value of the polynomial at the given point. More... | |
| void | calculateGradient (bool forceRecalc=false) |
| Calculate the gradient of this polynomial If forceRecalc is false, it will do nothing when the gradient already exists. More... | |
| void | getValueOfGradient (real x, real y, real &gradX, real &gradY) |
| Calculate the value of the gradient at the given point. More... | |
| void | findCriticalPoints (std::vector< real > &x_values, std::vector< real > &y_values, std::vector< int > &types) const |
| Returns critical points of the polynomial. More... | |
| void | writeBinary (std::ostream &os) const |
| write as binary to a stream More... | |
| void | writeBinary (const char *filename) const |
| write as binary into a file More... | |
| void | readBinary (std::istream &os) |
| read binary from a stream More... | |
| void | readBinary (const char *filename) |
| read binary from a file More... | |
Static Public Member Functions | |
| static unsigned int | getNoOfParametersFromDegree (int n) |
| How many parameters has a bivariate polynomial of the given degree. More... | |
Public Attributes | |
| int | degree {0} |
| real * | parameters {nullptr} |
| BivariatePolynomialT< real > * | gradient_x {nullptr} |
| BivariatePolynomialT< real > * | gradient_y {nullptr} |
Protected Member Functions | |
| void | memoryCleanUp () |
| Delete all members. More... | |
| void | deepCopy (const BivariatePolynomialT< real > &other) |
| Create a deep copy of the given polynomial. More... | |
This represents a bivariate polynomial and provides some functionality for it.
Definition at line 53 of file bivariate_polynomial.h.
| pcl::BivariatePolynomialT< real >::BivariatePolynomialT | ( | int | new_degree = 0 | ) |
Constructor.
Definition at line 55 of file bivariate_polynomial.hpp.
| pcl::BivariatePolynomialT< real >::BivariatePolynomialT | ( | const BivariatePolynomialT< real > & | other | ) |
Copy constructor.
Definition at line 62 of file bivariate_polynomial.hpp.
| pcl::BivariatePolynomialT< real >::~BivariatePolynomialT |
Destructor.
Definition at line 69 of file bivariate_polynomial.hpp.
| 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 139 of file bivariate_polynomial.hpp.
|
protected |
Create a deep copy of the given polynomial.
Definition at line 106 of file bivariate_polynomial.hpp.
References pcl::BivariatePolynomialT< real >::degree, pcl::BivariatePolynomialT< real >::gradient_x, pcl::BivariatePolynomialT< real >::gradient_y, and pcl::BivariatePolynomialT< real >::parameters.
Referenced by pcl::BivariatePolynomialT< real >::operator=().
| 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 200 of file bivariate_polynomial.hpp.
|
inline |
How many parameters has a bivariate polynomial with this degree.
Definition at line 76 of file bivariate_polynomial.h.
References pcl::BivariatePolynomialT< real >::degree, and pcl::BivariatePolynomialT< real >::getNoOfParametersFromDegree().
|
inlinestatic |
How many parameters has a bivariate polynomial of the given degree.
Definition at line 114 of file bivariate_polynomial.h.
Referenced by pcl::PolynomialCalculationsT< real >::bivariatePolynomialApproximation(), and pcl::BivariatePolynomialT< real >::getNoOfParameters().
| real pcl::BivariatePolynomialT< real >::getValue | ( | real | x, |
| real | y | ||
| ) | const |
Calculate the value of the polynomial at the given point.
Definition at line 170 of file bivariate_polynomial.hpp.
| 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 191 of file bivariate_polynomial.hpp.
|
protected |
Delete all members.
Definition at line 97 of file bivariate_polynomial.hpp.
|
inline |
= operator
Definition at line 67 of file bivariate_polynomial.h.
References pcl::BivariatePolynomialT< real >::deepCopy().
| void pcl::BivariatePolynomialT< real >::readBinary | ( | const char * | filename | ) |
read binary from a file
Definition at line 304 of file bivariate_polynomial.hpp.
| void pcl::BivariatePolynomialT< real >::readBinary | ( | std::istream & | os | ) |
read binary from a stream
Definition at line 293 of file bivariate_polynomial.hpp.
| void pcl::BivariatePolynomialT< real >::setDegree | ( | int | new_degree | ) |
Initialize members to default values.
Definition at line 76 of file bivariate_polynomial.hpp.
Referenced by pcl::PolynomialCalculationsT< real >::bivariatePolynomialApproximation().
| void pcl::BivariatePolynomialT< real >::writeBinary | ( | const char * | filename | ) | const |
write as binary into a file
Definition at line 285 of file bivariate_polynomial.hpp.
| void pcl::BivariatePolynomialT< real >::writeBinary | ( | std::ostream & | os | ) | const |
write as binary to a stream
Definition at line 276 of file bivariate_polynomial.hpp.
| int pcl::BivariatePolynomialT< real >::degree {0} |
Definition at line 117 of file bivariate_polynomial.h.
Referenced by pcl::BivariatePolynomialT< real >::deepCopy(), pcl::BivariatePolynomialT< real >::getNoOfParameters(), and pcl::operator<<().
| BivariatePolynomialT<real>* pcl::BivariatePolynomialT< real >::gradient_x {nullptr} |
Definition at line 119 of file bivariate_polynomial.h.
Referenced by pcl::BivariatePolynomialT< real >::deepCopy().
| BivariatePolynomialT<real>* pcl::BivariatePolynomialT< real >::gradient_y {nullptr} |
Definition at line 120 of file bivariate_polynomial.h.
Referenced by pcl::BivariatePolynomialT< real >::deepCopy().
| real* pcl::BivariatePolynomialT< real >::parameters {nullptr} |
Definition at line 118 of file bivariate_polynomial.h.
Referenced by pcl::PolynomialCalculationsT< real >::bivariatePolynomialApproximation(), pcl::BivariatePolynomialT< real >::deepCopy(), and pcl::operator<<().