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_);
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_
void setCopyAllFields(bool val)
Set whether all fields should be copied, or only the XYZ.
ProjectInliers()
Empty constructor.
boost::shared_ptr< ::pcl::PCLPointCloud2 > Ptr
PointCloud::Ptr PointCloudPtr
bool copy_all_fields_
True if all fields will be returned, false if only XYZ.
ModelCoefficientsConstPtr model_
A pointer to the vector of model coefficients.
std::string filter_name_
The filter name.
void setModelCoefficients(const ModelCoefficientsConstPtr &model)
Provide a pointer to the model coefficients.
ModelCoefficientsConstPtr getModelCoefficients()
Get a pointer to the model coefficients.
void setModelType(int model)
The type of model to use (user given parameter).
int getModelType() const
Get the type of SAC model used.
Filter represents the base filter class.
int model_type_
The type of model to use (user given parameter).
ProjectInliers()
Empty constructor.
boost::shared_ptr< ::pcl::PCLPointCloud2 const > PCLPointCloud2ConstPtr
void applyFilter(PointCloud &output)
Project point indices into a separate PointCloud.
boost::shared_ptr< ::pcl::PCLPointCloud2 const > ConstPtr
bool getCopyAllData()
Get whether all data is being copied (true), or only the projected inliers (false).
bool getCopyAllData() const
Get whether all data is being copied (true), or only the projected inliers (false).
void setModelType(int model)
The type of model to use (user given parameter).
ModelCoefficientsConstPtr getModelCoefficients() const
Get a pointer to the model coefficients.
boost::shared_ptr< PointCloud< PointT > > Ptr
boost::shared_ptr< const ProjectInliers< PointT > > ConstPtr
boost::shared_ptr< ::pcl::PCLPointCloud2 > PCLPointCloud2Ptr
PointCloud::ConstPtr PointCloudConstPtr
boost::shared_ptr< const PointCloud< PointT > > ConstPtr
boost::shared_ptr< ::pcl::ModelCoefficients const > ModelCoefficientsConstPtr
void setCopyAllData(bool val)
Set whether all data will be returned, or only the projected inliers.
int getModelType()
Get the type of SAC model used.
boost::shared_ptr< ProjectInliers< PointT > > Ptr
bool copy_all_data_
True if all data will be returned, false if only the projected inliers.
void setCopyAllData(bool val)
Set whether all data will be returned, or only the projected inliers.
bool getCopyAllFields() const
Get whether all fields are being copied (true), or only XYZ (false).
virtual ~ProjectInliers()
Empty destructor.
boost::shared_ptr< SampleConsensusModel > Ptr
virtual ~ProjectInliers()
Empty destructor.
void setModelCoefficients(const ModelCoefficientsConstPtr &model)
Provide a pointer to the model coefficients.
SampleConsensusModel represents the base model class.
ProjectInliers uses a model and a set of inlier indices from a PointCloud to project them into a sepa...