38 #ifndef PCL_FILTERS_PROJECT_INLIERS_H_
39 #define PCL_FILTERS_PROJECT_INLIERS_H_
41 #include <pcl/point_types.h>
42 #include <pcl/filters/filter.h>
43 #include <pcl/ModelCoefficients.h>
45 #include <pcl/sample_consensus/model_types.h>
46 #include <pcl/sample_consensus/sac_model.h>
47 #include <pcl/sample_consensus/sac_model_circle.h>
48 #include <pcl/sample_consensus/sac_model_cylinder.h>
49 #include <pcl/sample_consensus/sac_model_cone.h>
50 #include <pcl/sample_consensus/sac_model_line.h>
51 #include <pcl/sample_consensus/sac_model_normal_plane.h>
52 #include <pcl/sample_consensus/sac_model_normal_sphere.h>
53 #include <pcl/sample_consensus/sac_model_parallel_plane.h>
54 #include <pcl/sample_consensus/sac_model_normal_parallel_plane.h>
55 #include <pcl/sample_consensus/sac_model_parallel_line.h>
56 #include <pcl/sample_consensus/sac_model_perpendicular_plane.h>
57 #include <pcl/sample_consensus/sac_model_plane.h>
58 #include <pcl/sample_consensus/sac_model_sphere.h>
68 template<
typename Po
intT>
83 typedef boost::shared_ptr< ProjectInliers<PointT> >
Ptr;
84 typedef boost::shared_ptr< const ProjectInliers<PointT> >
ConstPtr;
88 ProjectInliers () : model_ (), sacmodel_ (), model_type_ (), copy_all_data_ (false)
109 return (model_type_);
134 copy_all_data_ = val;
141 return (copy_all_data_);
156 SampleConsensusModelPtr sacmodel_;
168 initSACModel (
int model_type);
192 ProjectInliers () : model_type_ (), copy_all_data_ (false), copy_all_fields_ (true), model_ (), sacmodel_ ()
194 filter_name_ =
"ProjectInliers";
213 return (model_type_);
238 copy_all_fields_ = val;
245 return (copy_all_fields_);
254 copy_all_data_ = val;
261 return (copy_all_data_);
277 applyFilter (PCLPointCloud2 &output);
281 SampleConsensusModelPtr sacmodel_;
284 initSACModel (
int model_type);
288 #ifdef PCL_NO_PRECOMPILE
289 #include <pcl/filters/impl/project_inliers.hpp>
292 #endif //#ifndef PCL_FILTERS_PROJECT_INLIERS_H_
boost::shared_ptr< ::pcl::ModelCoefficients const > ModelCoefficientsConstPtr
bool copy_all_fields_
True if all fields will be returned, false if only XYZ.
boost::shared_ptr< PointCloud< PointT > > Ptr
virtual ~ProjectInliers()
Empty destructor.
ProjectInliers()
Empty constructor.
bool getCopyAllFields() const
Get whether all fields are being copied (true), or only XYZ (false).
PointCloud::ConstPtr PointCloudConstPtr
bool copy_all_data_
True if all data will be returned, false if only the projected inliers.
void setModelCoefficients(const ModelCoefficientsConstPtr &model)
Provide a pointer to the model coefficients.
bool getCopyAllData() const
Get whether all data is being copied (true), or only the projected inliers (false).
bool getCopyAllData()
Get whether all data is being copied (true), or only the projected inliers (false).
ProjectInliers()
Empty constructor.
ProjectInliers uses a model and a set of inlier indices from a PointCloud to project them into a sepa...
boost::shared_ptr< ::pcl::PCLPointCloud2 const > PCLPointCloud2ConstPtr
boost::shared_ptr< ::pcl::PCLPointCloud2 > Ptr
boost::shared_ptr< const PointCloud< PointT > > ConstPtr
PointCloud::Ptr PointCloudPtr
SampleConsensusModel represents the base model class.
Filter represents the base filter class.
void setModelType(int model)
The type of model to use (user given parameter).
void setModelCoefficients(const ModelCoefficientsConstPtr &model)
Provide a pointer to the model coefficients.
boost::shared_ptr< ::pcl::PCLPointCloud2 const > ConstPtr
int getModelType()
Get the type of SAC model used.
PointCloud represents the base class in PCL for storing collections of 3D points. ...
void setCopyAllData(bool val)
Set whether all data will be returned, or only the projected inliers.
boost::shared_ptr< ::pcl::PCLPointCloud2 > PCLPointCloud2Ptr
void setCopyAllData(bool val)
Set whether all data will be returned, or only the projected inliers.
int getModelType() const
Get the type of SAC model used.
boost::shared_ptr< SampleConsensusModel > Ptr
ModelCoefficientsConstPtr model_
A pointer to the vector of model coefficients.
int model_type_
The type of model to use (user given parameter).
virtual ~ProjectInliers()
Empty destructor.
std::string filter_name_
The filter name.
boost::shared_ptr< ProjectInliers< PointT > > Ptr
boost::shared_ptr< const ProjectInliers< PointT > > ConstPtr
void setModelType(int model)
The type of model to use (user given parameter).
ModelCoefficientsConstPtr getModelCoefficients()
Get a pointer to the model coefficients.
void applyFilter(PointCloud &output)
Project point indices into a separate PointCloud.
void setCopyAllFields(bool val)
Set whether all fields should be copied, or only the XYZ.
ModelCoefficientsConstPtr getModelCoefficients() const
Get a pointer to the model coefficients.