Point Cloud Library (PCL) 1.12.0
Loading...
Searching...
No Matches
pcl::poisson::Polynomial< Degree > Class Template Reference

#include <pcl/surface/3rdparty/poisson4/polynomial.h>

Public Member Functions

 Polynomial (void)
 
template<int Degree2>
 Polynomial (const Polynomial< Degree2 > &P)
 
double operator() (double t) const
 
double integral (double tMin, double tMax) const
 
int operator== (const Polynomial &p) const
 
int operator!= (const Polynomial &p) const
 
int isZero (void) const
 
void setZero (void)
 
template<int Degree2>
Polynomialoperator= (const Polynomial< Degree2 > &p)
 
Polynomialoperator+= (const Polynomial &p)
 
Polynomialoperator-= (const Polynomial &p)
 
Polynomial operator- (void) const
 
Polynomial operator+ (const Polynomial &p) const
 
Polynomial operator- (const Polynomial &p) const
 
template<int Degree2>
Polynomial< Degree+Degree2 > operator* (const Polynomial< Degree2 > &p) const
 
Polynomialoperator+= (double s)
 
Polynomialoperator-= (double s)
 
Polynomialoperator*= (double s)
 
Polynomialoperator/= (double s)
 
Polynomial operator+ (double s) const
 
Polynomial operator- (double s) const
 
Polynomial operator* (double s) const
 
Polynomial operator/ (double s) const
 
Polynomial scale (double s) const
 
Polynomial shift (double t) const
 
Polynomial< Degree-1 > derivative (void) const
 
Polynomial< Degree+1 > integral (void) const
 
void printnl (void) const
 
PolynomialaddScaled (const Polynomial &p, double scale)
 
void getSolutions (double c, std::vector< double > &roots, double EPS) const
 
template<int Degree2>
Polynomial< Degree > & operator= (const Polynomial< Degree2 > &p)
 
double operator() (double t) const
 
double operator() (double t) const
 
double operator() (double t) const
 
Polynomial< 0 > BSplineComponent (int i)
 

Static Public Member Functions

static void Negate (const Polynomial &in, Polynomial &out)
 
static void Subtract (const Polynomial &p1, const Polynomial &p2, Polynomial &q)
 
static void Scale (const Polynomial &p, double w, Polynomial &q)
 
static void AddScaled (const Polynomial &p1, double w1, const Polynomial &p2, double w2, Polynomial &q)
 
static void AddScaled (const Polynomial &p1, const Polynomial &p2, double w2, Polynomial &q)
 
static void AddScaled (const Polynomial &p1, double w1, const Polynomial &p2, Polynomial &q)
 
static Polynomial BSplineComponent (int i)
 

Public Attributes

double coefficients [Degree+1]
 

Detailed Description

template<int Degree>
class pcl::poisson::Polynomial< Degree >

Definition at line 40 of file polynomial.h.

Constructor & Destructor Documentation

◆ Polynomial() [1/2]

template<int Degree>
pcl::poisson::Polynomial< Degree >::Polynomial ( void )

Definition at line 48 of file polynomial.hpp.

◆ Polynomial() [2/2]

template<int Degree>
template<int Degree2>
pcl::poisson::Polynomial< Degree >::Polynomial ( const Polynomial< Degree2 > & P)

Definition at line 51 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

Member Function Documentation

◆ AddScaled() [1/3]

template<int Degree>
void pcl::poisson::Polynomial< Degree >::AddScaled ( const Polynomial< Degree > & p1,
const Polynomial< Degree > & p2,
double w2,
Polynomial< Degree > & q )
static

Definition at line 161 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ AddScaled() [2/3]

template<int Degree>
void pcl::poisson::Polynomial< Degree >::AddScaled ( const Polynomial< Degree > & p1,
double w1,
const Polynomial< Degree > & p2,
double w2,
Polynomial< Degree > & q )
static

Definition at line 153 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ AddScaled() [3/3]

template<int Degree>
void pcl::poisson::Polynomial< Degree >::AddScaled ( const Polynomial< Degree > & p1,
double w1,
const Polynomial< Degree > & p2,
Polynomial< Degree > & q )
static

Definition at line 157 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ addScaled()

template<int Degree>
Polynomial< Degree > & pcl::poisson::Polynomial< Degree >::addScaled ( const Polynomial< Degree > & p,
double scale )

Definition at line 122 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ BSplineComponent() [1/2]

◆ BSplineComponent() [2/2]

Polynomial< 0 > pcl::poisson::Polynomial< 0 >::BSplineComponent ( int i)
inline

Definition at line 303 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ derivative()

template<int Degree>
Polynomial< Degree-1 > pcl::poisson::Polynomial< Degree >::derivative ( void ) const

Definition at line 67 of file polynomial.hpp.

◆ getSolutions()

template<int Degree>
void pcl::poisson::Polynomial< Degree >::getSolutions ( double c,
std::vector< double > & roots,
double EPS ) const

Definition at line 275 of file polynomial.hpp.

References pcl::poisson::Factor().

Referenced by pcl::poisson::PPolynomial< Degree >::getSolutions().

◆ integral() [1/2]

template<int Degree>
double pcl::poisson::Polynomial< Degree >::integral ( double tMin,
double tMax ) const

◆ integral() [2/2]

template<int Degree>
Polynomial< Degree+1 > pcl::poisson::Polynomial< Degree >::integral ( void ) const

Definition at line 74 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ isZero()

template<int Degree>
int pcl::poisson::Polynomial< Degree >::isZero ( void ) const

Definition at line 114 of file polynomial.hpp.

◆ Negate()

template<int Degree>
void pcl::poisson::Polynomial< Degree >::Negate ( const Polynomial< Degree > & in,
Polynomial< Degree > & out )
static

Definition at line 170 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator!=()

template<int Degree>
int pcl::poisson::Polynomial< Degree >::operator!= ( const Polynomial< Degree > & p) const

Definition at line 109 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator()() [1/4]

template<int Degree>
double pcl::poisson::Polynomial< Degree >::operator() ( double t) const

Definition at line 84 of file polynomial.hpp.

◆ operator()() [2/4]

double pcl::poisson::Polynomial< 0 >::operator() ( double t) const
inline

Definition at line 80 of file polynomial.hpp.

◆ operator()() [3/4]

double pcl::poisson::Polynomial< 1 >::operator() ( double t) const
inline

Definition at line 81 of file polynomial.hpp.

◆ operator()() [4/4]

double pcl::poisson::Polynomial< 2 >::operator() ( double t) const
inline

Definition at line 82 of file polynomial.hpp.

◆ operator*() [1/2]

template<int Degree>
template<int Degree2>
Polynomial< Degree+Degree2 > pcl::poisson::Polynomial< Degree >::operator* ( const Polynomial< Degree2 > & p) const

Definition at line 183 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator*() [2/2]

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::operator* ( double s) const

Definition at line 228 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator*=()

template<int Degree>
Polynomial< Degree > & pcl::poisson::Polynomial< Degree >::operator*= ( double s)

Definition at line 202 of file polynomial.hpp.

◆ operator+() [1/2]

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::operator+ ( const Polynomial< Degree > & p) const

Definition at line 137 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator+() [2/2]

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::operator+ ( double s) const

Definition at line 214 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator+=() [1/2]

template<int Degree>
Polynomial< Degree > & pcl::poisson::Polynomial< Degree >::operator+= ( const Polynomial< Degree > & p)

Definition at line 127 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator+=() [2/2]

template<int Degree>
Polynomial< Degree > & pcl::poisson::Polynomial< Degree >::operator+= ( double s)

Definition at line 190 of file polynomial.hpp.

◆ operator-() [1/3]

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::operator- ( const Polynomial< Degree > & p) const

Definition at line 143 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator-() [2/3]

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::operator- ( double s) const

Definition at line 221 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator-() [3/3]

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::operator- ( void ) const

Definition at line 176 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator-=() [1/2]

template<int Degree>
Polynomial< Degree > & pcl::poisson::Polynomial< Degree >::operator-= ( const Polynomial< Degree > & p)

Definition at line 132 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator-=() [2/2]

template<int Degree>
Polynomial< Degree > & pcl::poisson::Polynomial< Degree >::operator-= ( double s)

Definition at line 196 of file polynomial.hpp.

◆ operator/()

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::operator/ ( double s) const

Definition at line 235 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator/=()

template<int Degree>
Polynomial< Degree > & pcl::poisson::Polynomial< Degree >::operator/= ( double s)

Definition at line 208 of file polynomial.hpp.

◆ operator=() [1/2]

template<int Degree>
template<int Degree2>
Polynomial & pcl::poisson::Polynomial< Degree >::operator= ( const Polynomial< Degree2 > & p)

◆ operator=() [2/2]

template<int Degree>
template<int Degree2>
Polynomial< Degree > & pcl::poisson::Polynomial< Degree >::operator= ( const Polynomial< Degree2 > & p)

Definition at line 59 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ operator==()

template<int Degree>
int pcl::poisson::Polynomial< Degree >::operator== ( const Polynomial< Degree > & p) const

Definition at line 104 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ printnl()

template<int Degree>
void pcl::poisson::Polynomial< Degree >::printnl ( void ) const

Definition at line 267 of file polynomial.hpp.

Referenced by pcl::poisson::PPolynomial< Degree >::printnl().

◆ Scale()

template<int Degree>
void pcl::poisson::Polynomial< Degree >::Scale ( const Polynomial< Degree > & p,
double w,
Polynomial< Degree > & q )
static

Definition at line 149 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ scale()

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::scale ( double s) const

Definition at line 242 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

◆ setZero()

template<int Degree>
void pcl::poisson::Polynomial< Degree >::setZero ( void )

Definition at line 119 of file polynomial.hpp.

Referenced by pcl::poisson::PPolynomial< Degree >::getSolutions().

◆ shift()

template<int Degree>
Polynomial< Degree > pcl::poisson::Polynomial< Degree >::shift ( double t) const

◆ Subtract()

template<int Degree>
void pcl::poisson::Polynomial< Degree >::Subtract ( const Polynomial< Degree > & p1,
const Polynomial< Degree > & p2,
Polynomial< Degree > & q )
static

Definition at line 166 of file polynomial.hpp.

References pcl::poisson::Polynomial< Degree >::coefficients.

Member Data Documentation

◆ coefficients


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