Point Cloud Library (PCL) 1.12.0
|
PointRepresentation provides a set of methods for converting a point structs/object into an n-dimensional vector. More...
#include <pcl/point_representation.h>
Public Types | |
using | Ptr = shared_ptr<PointRepresentation<PointT> > |
using | ConstPtr = shared_ptr<const PointRepresentation<PointT> > |
Public Member Functions | |
virtual | ~PointRepresentation ()=default |
Empty destructor. | |
virtual void | copyToFloatArray (const PointT &p, float *out) const =0 |
Copy point data from input point to a float array. | |
bool | isTrivial () const |
Returns whether this point representation is trivial. | |
virtual bool | isValid (const PointT &p) const |
Verify that the input point is valid. | |
template<typename OutputType > | |
void | vectorize (const PointT &p, OutputType &out) const |
Convert input point into a vector representation, rescaling by alpha. | |
void | setRescaleValues (const float *rescale_array) |
Set the rescale values to use when vectorizing points. | |
int | getNumberOfDimensions () const |
Return the number of dimensions in the point's vector representation. | |
Protected Attributes | |
int | nr_dimensions_ = 0 |
The number of dimensions in this point's vector (i.e. | |
std::vector< float > | alpha_ |
A vector containing the rescale factor to apply to each dimension. | |
bool | trivial_ = false |
Indicates whether this point representation is trivial. | |
PointRepresentation provides a set of methods for converting a point structs/object into an n-dimensional vector.
using pcl::PointRepresentation< T >::ConstPtr = shared_ptr<const PointRepresentation<PointT> > |
Definition at line 79 of file point_representation.h.
using pcl::PointRepresentation< T >::Ptr = shared_ptr<PointRepresentation<PointT> > |
Definition at line 78 of file point_representation.h.
|
virtualdefault |
Empty destructor.
|
pure virtual |
Copy point data from input point to a float array.
This method must be overridden in all subclasses.
[in] | p | The input point |
[out] | out | A pointer to a float array. |
Referenced by pcl::PointRepresentation< T >::isValid(), and pcl::PointRepresentation< T >::vectorize().
|
inline |
Return the number of dimensions in the point's vector representation.
Definition at line 172 of file point_representation.h.
References pcl::PointRepresentation< T >::nr_dimensions_.
|
inline |
Returns whether this point representation is trivial.
It is trivial if and only if the following conditions hold:
Definition at line 98 of file point_representation.h.
References pcl::PointRepresentation< T >::alpha_, and pcl::PointRepresentation< T >::trivial_.
|
inlinevirtual |
Verify that the input point is valid.
p | The point to validate |
Definition at line 104 of file point_representation.h.
References pcl::PointRepresentation< T >::copyToFloatArray(), pcl::PointRepresentation< T >::nr_dimensions_, and pcl::PointRepresentation< T >::trivial_.
|
inline |
Set the rescale values to use when vectorizing points.
[in] | rescale_array | The array/vector of rescale values. Can be of any type that implements the [] operator. |
Definition at line 165 of file point_representation.h.
References pcl::PointRepresentation< T >::alpha_, and pcl::PointRepresentation< T >::nr_dimensions_.
|
inline |
Convert input point into a vector representation, rescaling by alpha.
[in] | p | the input point |
[out] | out | The output vector. Can be of any type that implements the [] operator. |
Definition at line 144 of file point_representation.h.
References pcl::PointRepresentation< T >::alpha_, pcl::PointRepresentation< T >::copyToFloatArray(), and pcl::PointRepresentation< T >::nr_dimensions_.
|
protected |
A vector containing the rescale factor to apply to each dimension.
Definition at line 65 of file point_representation.h.
Referenced by pcl::PointRepresentation< T >::isTrivial(), pcl::PointRepresentation< T >::setRescaleValues(), and pcl::PointRepresentation< T >::vectorize().
|
protected |
The number of dimensions in this point's vector (i.e.
the "k" in "k-D")
Definition at line 63 of file point_representation.h.
Referenced by pcl::PointRepresentation< T >::getNumberOfDimensions(), pcl::PointRepresentation< T >::isValid(), pcl::PointRepresentation< T >::setRescaleValues(), and pcl::PointRepresentation< T >::vectorize().
|
protected |
Indicates whether this point representation is trivial.
It is trivial if and only if the following conditions hold:
Definition at line 75 of file point_representation.h.
Referenced by pcl::PointRepresentation< T >::isTrivial(), and pcl::PointRepresentation< T >::isValid().