42 #include <pcl/filters/filter.h>
60 template<
typename Po
intT>
void
73 template<
typename Po
intT>
80 using Ptr = shared_ptr<FilterIndices<PointT> >;
81 using ConstPtr = shared_ptr<const FilterIndices<PointT> >;
206 user_filter_value_ (std::numeric_limits<float>::quiet_NaN ())
224 negative_ = negative;
243 keep_organized_ = keep_organized;
253 return (keep_organized_);
263 user_filter_value_ = value;
269 bool negative_{
false};
272 bool keep_organized_{
false};
287 #ifdef PCL_NO_PRECOMPILE
288 #include <pcl/filters/impl/filter_indices.hpp>
Filter represents the base filter class.
shared_ptr< Filter< PointT > > Ptr
shared_ptr< const Filter< PointT > > ConstPtr
float user_filter_value_
The user given value that the filtered point dimensions should be set to (default = NaN).
void applyFilter(PCLPointCloud2 &output) override=0
Abstract filter method for point cloud.
void setNegative(bool negative)
Set whether the regular conditions for points filtering should apply, or the inverted conditions.
void setUserFilterValue(float value)
Provide a value that the filtered points should be set to instead of removing them.
virtual void applyFilter(Indices &indices)=0
Abstract filter method for point cloud indices.
bool getNegative() const
Get whether the regular conditions for points filtering should apply, or the inverted conditions.
FilterIndices(bool extract_removed_indices=false)
Constructor.
void filter(Indices &indices)
Calls the filtering method and returns the filtered point cloud indices.
bool getKeepOrganized() const
Get whether the filtered points should be kept and set to the value given through setUserFilterValue ...
void setKeepOrganized(bool keep_organized)
Set whether the filtered points should be kept and set to the value given through setUserFilterValue ...
FilterIndices represents the base class for filters that are about binary point removal.
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 ...
bool keep_organized_
False = remove points (default), true = redefine points, keep structure.
FilterIndices(bool extract_removed_indices=false)
Constructor.
virtual void applyFilter(Indices &indices)=0
Abstract filter method for point cloud indices.
void filter(Indices &indices)
Calls the filtering method and returns the filtered point cloud indices.
bool getNegative() const
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.
void setUserFilterValue(float value)
Provide a value that the filtered points should be set to instead of removing them.
bool negative_
False = normal filter behavior (default), true = inverted behavior.
bool getKeepOrganized() const
Get whether the filtered points should be kept and set to the value given through setUserFilterValue ...
bool initCompute()
This method should get called before starting the actual computation.
bool deinitCompute()
This method should get called after finishing the actual computation.
PointCloud represents the base class in PCL for storing collections of 3D points.
void removeNaNFromPointCloud(const pcl::PointCloud< PointT > &cloud_in, pcl::PointCloud< PointT > &cloud_out, Indices &index)
Removes points with x, y, or z equal to NaN.
IndicesAllocator<> Indices
Type used for indices in PCL.
A point structure representing Euclidean xyz coordinates, and the RGB color.