Loading...
Searching...
No Matches
pcl_cuda::Filter< CloudT > Class Template Referenceabstract

Removes points with x, y, or z equal to NaN. More...

`#include </build/pcl-oe1NcQ/pcl-1.14.0+dfsg/cuda/filters/include/pcl/cuda/filters/filter.h>`

Inheritance diagram for pcl_cuda::Filter< CloudT >:

## Public Types

using | PointCloud = typename PCLCUDABase< CloudT >::PointCloud
using | PointCloudPtr = typename PointCloud::Ptr
using | PointCloudConstPtr = typename PointCloud::ConstPtr

## Public Member Functions

| Filter ()
| Empty constructor.
void | setFilterFieldName (const std::string &field_name)
| Provide the name of the field to be used for filtering data.
std::string const | getFilterFieldName ()
| Get the name of the field used for filtering.
void | setFilterLimits (const double &limit_min, const double &limit_max)
| Set the field filter limits.
void | getFilterLimits (double &limit_min, double &limit_max)
| Get the field filter limits (min/max) set by the user.
void | setFilterLimitsNegative (const bool limit_negative)
| Set to true if we want to return the data outside the interval specified by setFilterLimits (min, max).
void | getFilterLimitsNegative (bool &limit_negative)
| Get whether the data outside the interval (min/max) is to be returned (true) or inside (false).
bool | getFilterLimitsNegative ()
| Get whether the data outside the interval (min/max) is to be returned (true) or inside (false).
void | filter (PointCloud &output)
| Calls the filtering method and returns the filtered dataset on the device.

## Protected Member Functions

virtual void | applyFilter (PointCloud &output)=0
| Abstract filter method.
const std::string & | getClassName () const
| Get a string representation of the name of this class.

## Protected Attributes

std::string | filter_name_
| The filter name.
std::string | filter_field_name_
| The desired user filter field name.
double | filter_limit_min_
| The minimum allowed filter value a point will be considered from.
double | filter_limit_max_
| The maximum allowed filter value a point will be considered from.
bool | filter_limit_negative_
| Set to true if we want to return the data outside (filter_limit_min_;filter_limit_max_).

## Detailed Description

template<typename CloudT>
class pcl_cuda::Filter< CloudT >

Removes points with x, y, or z equal to NaN.

Parameters

  cloud_in | the input point cloud
  cloud_out | the input point cloud
  index | the mapping (ordered): cloud_out[i] = cloud_in[index[i]]

Note
  The density of the point cloud is lost.
  Can be called with cloud_in == cloud_out

Filter represents the base filter class. Some generic 3D operations that are applicable to all filters are defined here as static methods.

Definition at line 58 of file filter.h.

## Member Typedef Documentation

## PointCloud

template<typename CloudT >

using pcl_cuda::Filter< CloudT >::PointCloud = typename PCLCUDABase<CloudT>::PointCloud

Definition at line 66 of file filter.h.

## PointCloudConstPtr

template<typename CloudT >

using pcl_cuda::Filter< CloudT >::PointCloudConstPtr = typename PointCloud::ConstPtr

Definition at line 68 of file filter.h.

## PointCloudPtr

template<typename CloudT >

using pcl_cuda::Filter< CloudT >::PointCloudPtr = typename PointCloud::Ptr

Definition at line 67 of file filter.h.

## Constructor & Destructor Documentation

## Filter()

template<typename CloudT >

pcl_cuda::Filter< CloudT >::Filter | ( |  | ) |

inline

Empty constructor.

Definition at line 71 of file filter.h.

## Member Function Documentation

## applyFilter()

template<typename CloudT >

virtual void pcl_cuda::Filter< CloudT >::applyFilter | ( | PointCloud & | output | ) |

protected pure virtual

Abstract filter method.

The implementation needs to set output.{points, width, height, is_dense}.

Implemented in pcl_cuda::PassThrough< CloudT >, pcl_cuda::PassThrough< PointCloudAOS< Device > >, pcl_cuda::PassThrough< PointCloudSOA< Device > >, pcl_cuda::VoxelGrid< CloudT >, pcl_cuda::VoxelGrid< PointCloudAOS< Device > >, and pcl_cuda::VoxelGrid< PointCloudSOA< Device > >.

Referenced by pcl_cuda::Filter< CloudT >::filter().

## filter()

template<typename CloudT >

void pcl_cuda::Filter< CloudT >::filter | ( | PointCloud & | output | ) |

inline

Calls the filtering method and returns the filtered dataset on the device.

Parameters

  output | the resultant filtered point cloud dataset on the device

Definition at line 142 of file filter.h.

References pcl_cuda::Filter< CloudT >::applyFilter().

## getClassName()

template<typename CloudT >

const std::string & pcl_cuda::Filter< CloudT >::getClassName | ( |  | ) | const

inline protected

Get a string representation of the name of this class.

Definition at line 182 of file filter.h.

References pcl_cuda::Filter< CloudT >::filter_name_.

## getFilterFieldName()

template<typename CloudT >

std::string const pcl_cuda::Filter< CloudT >::getFilterFieldName | ( |  | ) |

inline

Get the name of the field used for filtering.

Definition at line 87 of file filter.h.

References pcl_cuda::Filter< CloudT >::filter_field_name_.

## getFilterLimits()

template<typename CloudT >

void pcl_cuda::Filter< CloudT >::getFilterLimits | ( | double & | limit_min,
|  | double & | limit_max
| ) |  |

inline

Get the field filter limits (min/max) set by the user.

The default values are std::numeric_limits<float>::lowest(), std::numeric_limits<float>::max().

Parameters

  limit_min | the minimum limit
  limit_max | the maximum limit

Definition at line 107 of file filter.h.

References pcl_cuda::Filter< CloudT >::filter_limit_max_, and pcl_cuda::Filter< CloudT >::filter_limit_min_.

## getFilterLimitsNegative() [1/2]

template<typename CloudT >

bool pcl_cuda::Filter< CloudT >::getFilterLimitsNegative | ( |  | ) |

inline

Get whether the data outside the interval (min/max) is to be returned (true) or inside (false).

Returns
  true if data outside the interval [min; max] is to be returned, false otherwise

Definition at line 136 of file filter.h.

References pcl_cuda::Filter< CloudT >::filter_limit_negative_.

## getFilterLimitsNegative() [2/2]

template<typename CloudT >

void pcl_cuda::Filter< CloudT >::getFilterLimitsNegative | ( | bool & | limit_negative | ) |

inline

Get whether the data outside the interval (min/max) is to be returned (true) or inside (false).

Parameters

  limit_negative | the limit_negative flag

Deprecated:
  Scheduled for removal in version 1 . 16 : "use bool getFilterLimitsNegative() instead"

Definition at line 129 of file filter.h.

References pcl_cuda::Filter< CloudT >::filter_limit_negative_.

## setFilterFieldName()

template<typename CloudT >

void pcl_cuda::Filter< CloudT >::setFilterFieldName | ( | const std::string & | field_name | ) |

inline

Provide the name of the field to be used for filtering data.

In conjunction with setFilterLimits, points having values outside this interval will be discarded.

Parameters

  field_name | the name of the field that contains values used for filtering

Definition at line 83 of file filter.h.

References pcl_cuda::Filter< CloudT >::filter_field_name_.

## setFilterLimits()

template<typename CloudT >

void pcl_cuda::Filter< CloudT >::setFilterLimits | ( | const double & | limit_min,
|  | const double & | limit_max
| ) |  |

inline

Set the field filter limits.

All points having field values outside this interval will be discarded.

Parameters

  limit_min | the minimum allowed field value
  limit_max | the maximum allowed field value

Definition at line 95 of file filter.h.

References pcl_cuda::Filter< CloudT >::filter_limit_max_, and pcl_cuda::Filter< CloudT >::filter_limit_min_.

## setFilterLimitsNegative()

template<typename CloudT >

void pcl_cuda::Filter< CloudT >::setFilterLimitsNegative | ( | const bool | limit_negative | ) |

inline

Set to true if we want to return the data outside the interval specified by setFilterLimits (min, max).

Default: false.

Parameters

  limit_negative | return data inside the interval (false) or outside (true)

Definition at line 118 of file filter.h.

References pcl_cuda::Filter< CloudT >::filter_limit_negative_.

## Member Data Documentation

## filter_field_name_

template<typename CloudT >

std::string pcl_cuda::Filter< CloudT >::filter_field_name_

protected

The desired user filter field name.

Definition at line 162 of file filter.h.

Referenced by pcl_cuda::Filter< CloudT >::getFilterFieldName(), and pcl_cuda::Filter< CloudT >::setFilterFieldName().

## filter_limit_max_

template<typename CloudT >

double pcl_cuda::Filter< CloudT >::filter_limit_max_

protected

The maximum allowed filter value a point will be considered from.

Definition at line 168 of file filter.h.

Referenced by pcl_cuda::Filter< CloudT >::getFilterLimits(), and pcl_cuda::Filter< CloudT >::setFilterLimits().

## filter_limit_min_

template<typename CloudT >

double pcl_cuda::Filter< CloudT >::filter_limit_min_

protected

The minimum allowed filter value a point will be considered from.

Definition at line 165 of file filter.h.

Referenced by pcl_cuda::Filter< CloudT >::getFilterLimits(), and pcl_cuda::Filter< CloudT >::setFilterLimits().

## filter_limit_negative_

template<typename CloudT >

bool pcl_cuda::Filter< CloudT >::filter_limit_negative_

protected

Set to true if we want to return the data outside (filter_limit_min_;filter_limit_max_).

Default: false.

Definition at line 171 of file filter.h.

Referenced by pcl_cuda::Filter< CloudT >::getFilterLimitsNegative(), pcl_cuda::Filter< CloudT >::getFilterLimitsNegative(), and pcl_cuda::Filter< CloudT >::setFilterLimitsNegative().

## filter_name_

template<typename CloudT >

std::string pcl_cuda::Filter< CloudT >::filter_name_

protected

The filter name.

Definition at line 159 of file filter.h.

Referenced by pcl_cuda::Filter< CloudT >::getClassName(), pcl_cuda::PassThrough< CloudT >::PassThrough(), pcl_cuda::PassThrough< PointCloudAOS< Device > >::PassThrough(), pcl_cuda::PassThrough< PointCloudSOA< Device > >::PassThrough(), pcl_cuda::VoxelGrid< CloudT >::VoxelGrid(), pcl_cuda::VoxelGrid< PointCloudAOS< Device > >::VoxelGrid(), and pcl_cuda::VoxelGrid< PointCloudSOA< Device > >::VoxelGrid().

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

- /build/pcl-oe1NcQ/pcl-1.14.0+dfsg/cuda/filters/include/pcl/cuda/filters/filter.h