40 #ifndef PCL_FILTERS_FILTER_INDICES_H_
41 #define PCL_FILTERS_FILTER_INDICES_H_
43 #include <pcl/filters/filter.h>
61 template<
typename Po
intT>
void
74 template<
typename Po
intT>
81 typedef boost::shared_ptr< FilterIndices<PointT> >
Ptr;
82 typedef boost::shared_ptr< const FilterIndices<PointT> >
ConstPtr;
215 keep_organized_ (false),
216 user_filter_value_ (
std::numeric_limits<float>::quiet_NaN ())
218 extract_removed_indices_ = extract_removed_indices;
237 filter (std::vector<int> &indices);
245 negative_ = negative;
264 keep_organized_ = keep_organized;
274 return (keep_organized_);
284 user_filter_value_ = value;
300 applyFilter (std::vector<int> &indices) = 0;
304 applyFilter (PCLPointCloud2 &output) = 0;
308 #ifdef PCL_NO_PRECOMPILE
309 #include <pcl/filters/impl/filter_indices.hpp>
312 #endif //#ifndef PCL_FILTERS_FILTER_INDICES_H_
float user_filter_value_
The user given value that the filtered point dimensions should be set to (default = NaN)...
void setKeepOrganized(bool keep_organized)
Set whether the filtered points should be kept and set to the value given through setUserFilterValue ...
void setNegative(bool negative)
Set whether the regular conditions for points filtering should apply, or the inverted conditions...
virtual ~FilterIndices()
Empty virtual destructor.
void filter(std::vector< int > &indices)
Calls the filtering method and returns the filtered point cloud indices.
void removeNaNFromPointCloud(const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, std::vector< int > &index)
Removes points with x, y, or z equal to NaN.
bool getNegative()
Get whether the regular conditions for points filtering should apply, or the inverted conditions...
virtual void filter(PCLPointCloud2 &output)
float user_filter_value_
The user given value that the filtered point dimensions should be set to (default = NaN)...
bool getNegative()
Get whether the regular conditions for points filtering should apply, or the inverted conditions...
void setNegative(bool negative)
Set whether the regular conditions for points filtering should apply, or the inverted conditions...
bool negative_
False = normal filter behavior (default), true = inverted behavior.
void filter(PointCloud &output)
Calls the filtering method and returns the filtered dataset in output.
void setUserFilterValue(float value)
Provide a value that the filtered points should be set to instead of removing them.
bool keep_organized_
False = remove points (default), true = redefine points, keep structure.
pcl::PointCloud< PointT > PointCloud
bool initCompute()
This method should get called before starting the actual computation.
FilterIndices represents the base class for filters that are about binary point removal.
bool keep_organized_
False = remove points (default), true = redefine points, keep structure.
virtual void applyFilter(std::vector< int > &indices)=0
Abstract filter method for point cloud indices.
boost::shared_ptr< FilterIndices< PointT > > Ptr
Filter represents the base filter class.
FilterIndices(bool extract_removed_indices=false)
Constructor.
void setUserFilterValue(float value)
Provide a value that the filtered points should be set to instead of removing them.
boost::shared_ptr< const FilterIndices< PointT > > ConstPtr
pcl::PCLPointCloud2 PCLPointCloud2
virtual ~FilterIndices()
Empty virtual destructor.
bool deinitCompute()
This method should get called after finishing the actual computation.
void setKeepOrganized(bool keep_organized)
Set whether the filtered points should be kept and set to the value given through setUserFilterValue ...
PointCloud represents the base class in PCL for storing collections of 3D points. ...
void filter(PointCloud &output)
bool getKeepOrganized()
Get whether the filtered points should be kept and set to the value given through setUserFilterValue ...
bool extract_removed_indices_
Set to true if we want to return the indices of the removed points.
bool getKeepOrganized()
Get whether the filtered points should be kept and set to the value given through setUserFilterValue ...
bool negative_
False = normal filter behavior (default), true = inverted behavior.
FilterIndices(bool extract_removed_indices=false)
Constructor.