Public Types | Public Member Functions | Protected Attributes
pcl::PointRepresentation< PointT > Class Template Reference

PointRepresentation provides a set of methods for converting a point structs/object into an n-dimensional vector. More...

#include <point_representation.h>

List of all members.

Public Types

typedef boost::shared_ptr
< const PointRepresentation
< PointT > > 
ConstPtr
typedef boost::shared_ptr
< PointRepresentation< PointT > > 
Ptr

Public Member Functions

virtual void copyToFloatArray (const PointT &p, float *out) const =0
 Copy point data from input point to a float array. This method must be overriden in all subclasses.
int getNumberOfDimensions () const
 Return the number of dimensions in the point's vector representation.
bool isTrivial () const
 Returns whether this point representation is trivial. It is trivial if and only if the following conditions hold:
virtual bool isValid (const PointT &p) const
 Verify that the input point is valid.
 PointRepresentation ()
 Empty constructor.
void setRescaleValues (const float *rescale_array)
 Set the rescale values to use when vectorizing points.
template<typename OutputType >
void vectorize (const PointT &p, OutputType &out) const
 Convert input point into a vector representation, rescaling by alpha.
virtual ~PointRepresentation ()
 Empty destructor.

Protected Attributes

std::vector< float > alpha_
 A vector containing the rescale factor to apply to each dimension.
int nr_dimensions_
 The number of dimensions in this point's vector (i.e. the "k" in "k-D")
bool trivial_
 Indicates whether this point representation is trivial. It is trivial if and only if the following conditions hold:

Detailed Description

template<typename PointT>
class pcl::PointRepresentation< PointT >

PointRepresentation provides a set of methods for converting a point structs/object into an n-dimensional vector.

Note:
This is an abstract class. Subclasses must set nr_dimensions_ to the appropriate value in the constructor and provide an implemention of the pure virtual copyToFloatArray method.
Author:
Michael Dixon

Definition at line 55 of file point_representation.h.


Member Typedef Documentation

template<typename PointT>
typedef boost::shared_ptr<const PointRepresentation<PointT> > pcl::PointRepresentation< PointT >::ConstPtr
template<typename PointT>
typedef boost::shared_ptr<PointRepresentation<PointT> > pcl::PointRepresentation< PointT >::Ptr

Constructor & Destructor Documentation

template<typename PointT>
pcl::PointRepresentation< PointT >::PointRepresentation ( ) [inline]

Empty constructor.

Definition at line 78 of file point_representation.h.

template<typename PointT>
virtual pcl::PointRepresentation< PointT >::~PointRepresentation ( ) [inline, virtual]

Empty destructor.

Definition at line 81 of file point_representation.h.


Member Function Documentation

template<typename PointT>
virtual void pcl::PointRepresentation< PointT >::copyToFloatArray ( const PointT p,
float *  out 
) const [pure virtual]
template<typename PointT>
int pcl::PointRepresentation< PointT >::getNumberOfDimensions ( ) const [inline]

Return the number of dimensions in the point's vector representation.

Definition at line 171 of file point_representation.h.

template<typename PointT>
bool pcl::PointRepresentation< PointT >::isTrivial ( ) const [inline]

Returns whether this point representation is trivial. It is trivial if and only if the following conditions hold:

  • the relevant data consists only of float values
  • the vectorize operation directly copies the first nr_dimensions_ elements of PointT to the out array
  • sizeof(PointT) is a multiple of sizeof(float) In short, a trivial point representation converts the input point to a float array that is the same as if the point was reinterpret_casted to a float array of length nr_dimensions_ .

Definition at line 96 of file point_representation.h.

template<typename PointT>
virtual bool pcl::PointRepresentation< PointT >::isValid ( const PointT p) const [inline, virtual]

Verify that the input point is valid.

Parameters:
pThe point to validate

Definition at line 102 of file point_representation.h.

template<typename PointT>
void pcl::PointRepresentation< PointT >::setRescaleValues ( const float *  rescale_array) [inline]

Set the rescale values to use when vectorizing points.

Parameters:
[in]rescale_arrayThe array/vector of rescale values. Can be of any type that implements the [] operator.

Definition at line 163 of file point_representation.h.

template<typename PointT>
template<typename OutputType >
void pcl::PointRepresentation< PointT >::vectorize ( const PointT p,
OutputType &  out 
) const [inline]

Convert input point into a vector representation, rescaling by alpha.

Parameters:
[in]pthe input point
[out]outThe output vector. Can be of any type that implements the [] operator.

Definition at line 142 of file point_representation.h.


Member Data Documentation

template<typename PointT>
std::vector<float> pcl::PointRepresentation< PointT >::alpha_ [protected]

A vector containing the rescale factor to apply to each dimension.

Definition at line 61 of file point_representation.h.

template<typename PointT>
int pcl::PointRepresentation< PointT >::nr_dimensions_ [protected]

The number of dimensions in this point's vector (i.e. the "k" in "k-D")

Definition at line 59 of file point_representation.h.

template<typename PointT>
bool pcl::PointRepresentation< PointT >::trivial_ [protected]

Indicates whether this point representation is trivial. It is trivial if and only if the following conditions hold:

  • the relevant data consists only of float values
  • the vectorize operation directly copies the first nr_dimensions_ elements of PointT to the out array
  • sizeof(PointT) is a multiple of sizeof(float) In short, a trivial point representation converts the input point to a float array that is the same as if the point was reinterpret_casted to a float array of length nr_dimensions_ . This value says that this representation can be trivial; it is only trivial if setRescaleValues() has not been set.

Definition at line 71 of file point_representation.h.


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


pcl
Author(s): Open Perception
autogenerated on Wed Aug 26 2015 15:43:02