Point Cloud Library (PCL)  1.6.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Types | Public Member Functions
pcl::FilterIndices< sensor_msgs::PointCloud2 > Class Template Reference

FilterIndices represents the base class for filters that are about binary point removal. More...

#include <pcl/filters/filter_indices.h>

Inheritance diagram for pcl::FilterIndices< sensor_msgs::PointCloud2 >:
Inheritance graph
[legend]
Collaboration diagram for pcl::FilterIndices< sensor_msgs::PointCloud2 >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef sensor_msgs::PointCloud2 PointCloud2
typedef PointCloud2::Ptr PointCloud2Ptr
typedef PointCloud2::ConstPtr PointCloud2ConstPtr
typedef PointIndices::Ptr PointIndicesPtr
typedef PointIndices::ConstPtr PointIndicesConstPtr

Public Member Functions

 FilterIndices (bool extract_removed_indices=false)
 Constructor.
virtual ~FilterIndices ()
 Empty virtual destructor.
virtual void filter (PointCloud2 &output)
 Calls the filtering method and returns the filtered dataset in output.
void filter (std::vector< int > &indices)
 Calls the filtering method and returns the filtered point cloud indices.
void setNegative (bool negative)
 Set whether the regular conditions for points filtering should apply, or the inverted conditions.
bool getNegative ()
 Get whether the regular conditions for points filtering should apply, or the inverted conditions.
void setKeepOrganized (bool keep_organized)
 Set whether the filtered points should be kept and set to the value given through setUserFilterValue (default: NaN), or removed from the PointCloud, thus potentially breaking its organized structure.
bool getKeepOrganized ()
 Get whether the filtered points should be kept and set to the value given through setUserFilterValue (default = NaN), or removed from the PointCloud, thus potentially breaking its organized structure.
void setUserFilterValue (float value)
 Provide a value that the filtered points should be set to instead of removing them.
IndicesConstPtr const getRemovedIndices ()
 Get the point indices being removed.
void setInputCloud (const PointCloud2ConstPtr &cloud)
 Provide a pointer to the input dataset.
PointCloud2ConstPtr const getInputCloud ()
 Get a pointer to the input point cloud dataset.
void setIndices (const IndicesPtr &indices)
 Provide a pointer to the vector of indices that represents the input data.
void setIndices (const PointIndicesConstPtr &indices)
 Provide a pointer to the vector of indices that represents the input data.
IndicesPtr const getIndices ()
 Get a pointer to the vector of indices used.

Detailed Description

template<>
class pcl::FilterIndices< sensor_msgs::PointCloud2 >

FilterIndices represents the base class for filters that are about binary point removal.


All derived classes have to implement the filter (PointCloud &output) and the filter (std::vector<int> &indices) methods. Ideally they also make use of the negative_, keep_organized_ and extract_removed_indices_ systems. The distinguishment between the negative_ and extract_removed_indices_ systems only makes sense if the class automatically filters non-finite entries in the filtering methods (recommended).

Author:
Justin Rosen

Definition at line 204 of file filter_indices.h.


Member Typedef Documentation

Reimplemented from pcl::Filter< sensor_msgs::PointCloud2 >.

Reimplemented in pcl::ExtractIndices< sensor_msgs::PointCloud2 >.

Definition at line 207 of file filter_indices.h.

Reimplemented from pcl::PCLBase< sensor_msgs::PointCloud2 >.

Reimplemented in pcl::ExtractIndices< sensor_msgs::PointCloud2 >.

Definition at line 166 of file filter.h.

Reimplemented from pcl::PCLBase< sensor_msgs::PointCloud2 >.

Reimplemented in pcl::ExtractIndices< sensor_msgs::PointCloud2 >.

Definition at line 165 of file filter.h.

Definition at line 280 of file pcl_base.h.

Definition at line 279 of file pcl_base.h.


Constructor & Destructor Documentation

pcl::FilterIndices< sensor_msgs::PointCloud2 >::FilterIndices ( bool  extract_removed_indices = false) [inline]

Constructor.

Parameters:
[in]extract_removed_indicesSet to true if you want to extract the indices of points being removed (default = false).

Definition at line 212 of file filter_indices.h.

virtual pcl::FilterIndices< sensor_msgs::PointCloud2 >::~FilterIndices ( ) [inline, virtual]

Empty virtual destructor.

Definition at line 223 of file filter_indices.h.


Member Function Documentation

virtual void pcl::FilterIndices< sensor_msgs::PointCloud2 >::filter ( PointCloud2 output) [inline, virtual]

Calls the filtering method and returns the filtered dataset in output.

Parameters:
[out]outputthe resultant filtered point cloud dataset

Reimplemented from pcl::Filter< sensor_msgs::PointCloud2 >.

Definition at line 228 of file filter_indices.h.

void pcl::FilterIndices< sensor_msgs::PointCloud2 >::filter ( std::vector< int > &  indices)

Calls the filtering method and returns the filtered point cloud indices.

Parameters:
[out]indicesthe resultant filtered point cloud indices
IndicesPtr const pcl::PCLBase< sensor_msgs::PointCloud2 >::getIndices ( ) [inline, inherited]

Get a pointer to the vector of indices used.

Definition at line 329 of file pcl_base.h.

Get a pointer to the input point cloud dataset.

Definition at line 303 of file pcl_base.h.

Get whether the filtered points should be kept and set to the value given through setUserFilterValue (default = NaN), or removed from the PointCloud, thus potentially breaking its organized structure.

Returns:
The value of the internal keep_organized_ parameter; false = remove points (default), true = redefine points, keep structure.

Definition at line 272 of file filter_indices.h.

Get whether the regular conditions for points filtering should apply, or the inverted conditions.

Returns:
The value of the internal negative_ parameter; false = normal filter behavior (default), true = inverted behavior.

Definition at line 252 of file filter_indices.h.

Get the point indices being removed.

Returns:
The value of the internal negative_ parameter; false = normal filter behavior (default), true = inverted behavior.

Reimplemented from pcl::Filter< sensor_msgs::PointCloud2 >.

Definition at line 291 of file filter_indices.h.

void pcl::PCLBase< sensor_msgs::PointCloud2 >::setIndices ( const IndicesPtr indices) [inline, inherited]

Provide a pointer to the vector of indices that represents the input data.

Parameters:
indicesa pointer to the vector of indices that represents the input data.

Definition at line 309 of file pcl_base.h.

void pcl::PCLBase< sensor_msgs::PointCloud2 >::setIndices ( const PointIndicesConstPtr indices) [inline, inherited]

Provide a pointer to the vector of indices that represents the input data.

Parameters:
indicesa pointer to the vector of indices that represents the input data.

Definition at line 320 of file pcl_base.h.

Provide a pointer to the input dataset.

Parameters:
cloudthe const boost shared pointer to a PointCloud message
void pcl::FilterIndices< sensor_msgs::PointCloud2 >::setKeepOrganized ( bool  keep_organized) [inline]

Set whether the filtered points should be kept and set to the value given through setUserFilterValue (default: NaN), or removed from the PointCloud, thus potentially breaking its organized structure.

Parameters:
[in]keep_organizedfalse = remove points (default), true = redefine points, keep structure.

Definition at line 262 of file filter_indices.h.

void pcl::FilterIndices< sensor_msgs::PointCloud2 >::setNegative ( bool  negative) [inline]

Set whether the regular conditions for points filtering should apply, or the inverted conditions.

Parameters:
[in]negativefalse = normal filter behavior (default), true = inverted behavior.

Definition at line 243 of file filter_indices.h.

Provide a value that the filtered points should be set to instead of removing them.

Used in conjunction with setKeepOrganized ().

Parameters:
[in]valuethe user given value that the filtered point dimensions should be set to (default = NaN).

Definition at line 282 of file filter_indices.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines