PCL
pcl::BidimensionalInterpolation< T > Class Template Referenceabstract

A generic interface to two-dimensional interpolation algorithms. More...

#include <BidimensionalInterpolation.h>

+ Inheritance diagram for pcl::BidimensionalInterpolation< T >:

Public Member Functions

 BidimensionalInterpolation ()=default
 
 BidimensionalInterpolation (const BidimensionalInterpolation &)=default
 
virtual ~BidimensionalInterpolation ()
 
const T * BeingInterpolated () const
 
double BorderFillValue () const
 
virtual void Clear ()
 
void DisableBorderFilling (bool disable=true)
 
void EnableBorderFilling (bool enable=true)
 
int Height () const
 
virtual void Initialize (const T *data, int width, int height)
 
bool IsBorderFillingEnabled () const
 
virtual double operator() (double x, double y) const =0
 
void SetBorderFillValue (double v)
 
int Width () const
 

Detailed Description

template<typename T>
class pcl::BidimensionalInterpolation< T >

BidimensionalInterpolation is an abstract base class for all two-dimensional interpolation algorithm implementations in PCL.

Definition at line 75 of file BidimensionalInterpolation.h.

Constructor & Destructor Documentation

◆ BidimensionalInterpolation() [1/2]

template<typename T >
pcl::BidimensionalInterpolation< T >::BidimensionalInterpolation ( )
default

Constructs a BidimensionalInterpolation object.

◆ BidimensionalInterpolation() [2/2]

template<typename T >
pcl::BidimensionalInterpolation< T >::BidimensionalInterpolation ( const BidimensionalInterpolation< T > &  )
default

Copy constructor.

◆ ~BidimensionalInterpolation()

template<typename T >
virtual pcl::BidimensionalInterpolation< T >::~BidimensionalInterpolation ( )
inlinevirtual

Destroys a BidimensionalInterpolation object.

Definition at line 92 of file BidimensionalInterpolation.h.

Member Function Documentation

◆ BeingInterpolated()

template<typename T >
const T* pcl::BidimensionalInterpolation< T >::BeingInterpolated ( ) const
inline

Returns a pointer to the interpolated data array.

Definition at line 140 of file BidimensionalInterpolation.h.

◆ BorderFillValue()

template<typename T >
double pcl::BidimensionalInterpolation< T >::BorderFillValue ( ) const
inline

Returns the current border fill value for this interpolation. See the documentation for EnableBorderFilling() for more information about border filling and boundary conditions.

Definition at line 215 of file BidimensionalInterpolation.h.

◆ Clear()

template<typename T >
virtual void pcl::BidimensionalInterpolation< T >::Clear ( )
inlinevirtual

Clears auxiliary/intermediate data (and/or whatever requires clean up). Derived classes overriding this function should call their base class version via explicit downcast.

Definition at line 131 of file BidimensionalInterpolation.h.

◆ DisableBorderFilling()

template<typename T >
void pcl::BidimensionalInterpolation< T >::DisableBorderFilling ( bool  disable = true)
inline

Disables (or enables) border filling.

This is a convenience member function, equivalent to:

EnableBorderFilling( !disable );

Definition at line 182 of file BidimensionalInterpolation.h.

◆ EnableBorderFilling()

template<typename T >
void pcl::BidimensionalInterpolation< T >::EnableBorderFilling ( bool  enable = true)
inline

Enables (or disables) border filling.

When border filling is enabled, a user-defined constant fill value is used to interpolate at locations near the borders of the data matrix.

When border filling is disabled, existing border values are extended to interpolate at border locations (Neumann boundary conditions).

Definition at line 170 of file BidimensionalInterpolation.h.

◆ Height()

template<typename T >
int pcl::BidimensionalInterpolation< T >::Height ( ) const
inline

Returns the height (number of rows) of the interpolated data matrix.

Definition at line 156 of file BidimensionalInterpolation.h.

◆ Initialize()

template<typename T >
virtual void pcl::BidimensionalInterpolation< T >::Initialize ( const T *  data,
int  width,
int  height 
)
inlinevirtual

Initializes a new interpolation.

Parameters
dataTwo-dimensional matrix of function values stored in row-order. Must remain valid and accessible while this object is used to compute interpolated function values.
widthHorizontal dimension (most rapidly varying coordinate) of the data array.
heightVertical dimension (most slowly varying coordinate) of the data array.

Reimplemented in pcl::BicubicFilterInterpolation< T >.

Definition at line 110 of file BidimensionalInterpolation.h.

◆ IsBorderFillingEnabled()

template<typename T >
bool pcl::BidimensionalInterpolation< T >::IsBorderFillingEnabled ( ) const
inline

Returns true iff border filling is enabled for this interpolation. See the documentation for EnableBorderFilling() for more information.

Definition at line 191 of file BidimensionalInterpolation.h.

◆ operator()()

template<typename T >
virtual double pcl::BidimensionalInterpolation< T >::operator() ( double  x,
double  y 
) const
pure virtual

◆ SetBorderFillValue()

template<typename T >
void pcl::BidimensionalInterpolation< T >::SetBorderFillValue ( double  v)
inline

Sets the border fill value v. See the documentation for EnableBorderFilling() for more information about border filling and boundary conditions.

Parameters
vBorder fill value. It is the responsibility of the caller to ensure that the specified value is within the valid range of the data type used by this interpolation.

Definition at line 205 of file BidimensionalInterpolation.h.

◆ Width()

template<typename T >
int pcl::BidimensionalInterpolation< T >::Width ( ) const
inline

Returns the width (number of columns) of the interpolated data matrix.

Definition at line 148 of file BidimensionalInterpolation.h.


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