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_
boost::shared_ptr< ::pcl::ModelCoefficients const > ModelCoefficientsConstPtr
bool copy_all_fields_
True if all fields will be returned, false if only XYZ.
virtual ~ProjectInliers()
Empty destructor.
ProjectInliers()
Empty constructor.
bool getCopyAllFields() const
Get whether all fields are being copied (true), or only XYZ (false).
boost::shared_ptr< const PointCloud< PointT > > ConstPtr
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).
boost::shared_ptr< PointCloud< PointT > > Ptr
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
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.
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.