44 #include <pcl/filters/filter_indices.h>
80 template <
typename Po
intT>
87 using FieldList =
typename pcl::traits::fieldList<PointT>::type;
91 using Ptr = shared_ptr<PassThrough<PointT> >;
92 using ConstPtr = shared_ptr<const PassThrough<PointT> >;
100 filter_field_name_ (
""),
101 filter_limit_min_ (FLT_MIN),
102 filter_limit_max_ (FLT_MAX)
114 filter_field_name_ = field_name;
120 inline std::string
const
123 return (filter_field_name_);
134 filter_limit_min_ = limit_min;
135 filter_limit_max_ = limit_max;
145 limit_min = filter_limit_min_;
146 limit_max = filter_limit_max_;
154 PCL_DEPRECATED(1, 13,
"use inherited FilterIndices::setNegative() instead")
165 PCL_DEPRECATED(1, 13,
"use inherited FilterIndices::getNegative() instead")
210 std::string filter_field_name_;
213 float filter_limit_min_;
216 float filter_limit_max_;
239 filter_field_name_ (
""), filter_limit_min_ (-FLT_MAX), filter_limit_max_ (FLT_MAX)
241 filter_name_ =
"PassThrough";
251 filter_field_name_ = field_name;
255 inline std::string
const
258 return (filter_field_name_);
268 filter_limit_min_ = limit_min;
269 filter_limit_max_ = limit_max;
279 limit_min = filter_limit_min_;
280 limit_max = filter_limit_max_;
292 std::string filter_field_name_;
295 double filter_limit_min_;
298 double filter_limit_max_;
303 #ifdef PCL_NO_PRECOMPILE
304 #include <pcl/filters/impl/passthrough.hpp>
Filter represents the base filter class.
shared_ptr< Filter< PointT > > Ptr
shared_ptr< const Filter< PointT > > ConstPtr
std::string filter_name_
The filter name.
FilterIndices represents the base class for filters that are about binary point removal.
bool negative_
False = normal filter behavior (default), true = inverted behavior.
PCLPointCloud2::Ptr PCLPointCloud2Ptr
PCLPointCloud2::ConstPtr PCLPointCloud2ConstPtr
typename PointCloud::Ptr PointCloudPtr
typename PointCloud::ConstPtr PointCloudConstPtr
void applyFilter(Indices &indices) override
Abstract filter method for point cloud indices.
void applyFilter(PCLPointCloud2 &output) override
Abstract filter method for point cloud.
std::string const getFilterFieldName() const
Get the name of the field used for filtering.
void setFilterFieldName(const std::string &field_name)
Provide the name of the field to be used for filtering data.
void getFilterLimits(double &limit_min, double &limit_max) const
Get the field filter limits (min/max) set by the user.
PassThrough(bool extract_removed_indices=false)
Constructor.
void setFilterLimits(const double &limit_min, const double &limit_max)
Set the field filter limits.
PassThrough passes points in a cloud based on constraints for one particular field of the point type.
void applyFilter(Indices &indices) override
Filtered results are indexed by an indices array.
PassThrough(bool extract_removed_indices=false)
Constructor.
void setFilterLimitsNegative(const bool limit_negative)
Set to true if we want to return the data outside the interval specified by setFilterLimits (min,...
void setFilterFieldName(const std::string &field_name)
Provide the name of the field to be used for filtering data.
void setFilterLimits(const float &limit_min, const float &limit_max)
Set the numerical limits for the field for filtering data.
bool getFilterLimitsNegative() const
Get whether the data outside the interval (min/max) is to be returned (true) or inside (false).
typename pcl::traits::fieldList< PointT >::type FieldList
void getFilterLimits(float &limit_min, float &limit_max) const
Get the numerical limits for the field for filtering data.
void applyFilterIndices(Indices &indices)
Filtered results are indexed by an indices array.
std::string const getFilterFieldName() const
Retrieve the name of the field to be used for filtering data.
PointCloud represents the base class in PCL for storing collections of 3D points.
shared_ptr< PointCloud< PointT > > Ptr
shared_ptr< const PointCloud< PointT > > ConstPtr
IndicesAllocator<> Indices
Type used for indices in PCL.
Defines all the PCL and non-PCL macros used.
#define PCL_DEPRECATED(Major, Minor, Message)
macro for compatibility across compilers and help remove old deprecated items for the Major....
shared_ptr< ::pcl::PCLPointCloud2 > Ptr
shared_ptr< const ::pcl::PCLPointCloud2 > ConstPtr
A point structure representing Euclidean xyz coordinates, and the RGB color.