40 #ifndef PCL_FILTERS_PASSTHROUGH_H_
41 #define PCL_FILTERS_PASSTHROUGH_H_
79 template <
typename Po
intT>
94 filter_field_name_ (
""),
95 filter_limit_min_ (FLT_MIN),
96 filter_limit_max_ (FLT_MAX)
98 filter_name_ =
"PassThrough";
108 filter_field_name_ = field_name;
114 inline std::string
const
117 return (filter_field_name_);
128 filter_limit_min_ = limit_min;
129 filter_limit_max_ = limit_max;
139 limit_min = filter_limit_min_;
140 limit_max = filter_limit_max_;
151 negative_ = limit_negative;
161 limit_negative = negative_;
195 applyFilter (std::vector<int> &indices)
197 applyFilterIndices (indices);
204 applyFilterIndices (std::vector<int> &indices);
208 std::string filter_field_name_;
211 float filter_limit_min_;
214 float filter_limit_max_;
237 user_filter_value_ (std::numeric_limits<float>::quiet_NaN ()),
238 filter_field_name_ (
""), filter_limit_min_ (-FLT_MAX), filter_limit_max_ (FLT_MAX),
239 filter_limit_negative_ (false)
241 filter_name_ =
"PassThrough";
253 setKeepOrganized (
bool val)
255 keep_organized_ = val;
262 return (keep_organized_);
271 setUserFilterValue (
float val)
273 user_filter_value_ = val;
281 setFilterFieldName (
const std::string &field_name)
283 filter_field_name_ = field_name;
287 inline std::string
const
288 getFilterFieldName ()
290 return (filter_field_name_);
298 setFilterLimits (
const double &limit_min,
const double &limit_max)
300 filter_limit_min_ = limit_min;
301 filter_limit_max_ = limit_max;
309 getFilterLimits (
double &limit_min,
double &limit_max)
311 limit_min = filter_limit_min_;
312 limit_max = filter_limit_max_;
320 setFilterLimitsNegative (
const bool limit_negative)
322 filter_limit_negative_ = limit_negative;
329 getFilterLimitsNegative (
bool &limit_negative)
331 limit_negative = filter_limit_negative_;
338 getFilterLimitsNegative ()
340 return (filter_limit_negative_);
345 applyFilter (PointCloud2 &output);
351 bool keep_organized_;
356 float user_filter_value_;
359 std::string filter_field_name_;
362 double filter_limit_min_;
365 double filter_limit_max_;
368 bool filter_limit_negative_;
373 #endif // PCL_FILTERS_PASSTHROUGH_H_