Point Cloud Library (PCL)
1.10.0
|
43 #include <pcl/sample_consensus/sac_model_normal_plane.h>
44 #include <pcl/sample_consensus/model_types.h>
84 template <
typename Po
intT,
typename Po
intNT>
112 , axis_ (
Eigen::Vector4f::Zero ())
113 , distance_from_origin_ (0)
118 model_name_ =
"SampleConsensusModelNormalParallelPlane";
129 const std::vector<int> &indices,
132 , axis_ (
Eigen::Vector4f::Zero ())
133 , distance_from_origin_ (0)
138 model_name_ =
"SampleConsensusModelNormalParallelPlane";
150 setAxis (
const Eigen::Vector3f &ax) { axis_.head<3> () = ax; axis_.normalize ();}
153 inline Eigen::Vector3f
154 getAxis ()
const {
return (axis_.head<3> ()); }
161 setEpsAngle (
const double ea) { eps_angle_ = ea; cos_angle_ = std::abs (std::cos (ea));}
201 isModelValid (
const Eigen::VectorXf &model_coefficients)
const override;
205 Eigen::Vector4f axis_;
208 double distance_from_origin_;
220 #ifdef PCL_NO_PRECOMPILE
221 #include <pcl/sample_consensus/impl/sac_model_normal_parallel_plane.hpp>
Defines all the PCL and non-PCL macros used.
This file defines compatibility wrappers for low level I/O functions.
SampleConsensusModelFromNormals represents the base model class for models that require the use of su...
double getDistanceFromOrigin() const
Get the distance of the plane from the origin.
unsigned int sample_size_
The size of a sample from which the model is computed.
pcl::SacModel getModelType() const override
Return a unique id for this model (SACMODEL_NORMAL_PARALLEL_PLANE).
SampleConsensusModelNormalPlane defines a model for 3D plane segmentation using additional surface no...
unsigned int model_size_
The number of coefficients in the model.
double getEpsDist() const
Get the distance epsilon (delta) threshold.
PointCloud represents the base class in PCL for storing collections of 3D points.
SampleConsensusModelNormalParallelPlane(const PointCloudConstPtr &cloud, bool random=false)
Constructor for base SampleConsensusModelNormalParallelPlane.
A point structure representing Euclidean xyz coordinates, and the RGB color.
SampleConsensusModelNormalParallelPlane(const PointCloudConstPtr &cloud, const std::vector< int > &indices, bool random=false)
Constructor for base SampleConsensusModelNormalParallelPlane.
void setEpsDist(const double delta)
Set the distance epsilon (delta) threshold.
double getEpsAngle() const
Get the angle epsilon (delta) threshold.
shared_ptr< const SampleConsensusModel< PointT > > ConstPtr
typename pcl::PointCloud< PointNT >::Ptr PointCloudNPtr
typename pcl::PointCloud< PointNT >::ConstPtr PointCloudNConstPtr
SampleConsensusModelNormalParallelPlane defines a model for 3D plane segmentation using additional su...
#define PCL_MAKE_ALIGNED_OPERATOR_NEW
Macro to signal a class requires a custom allocator.
shared_ptr< SampleConsensusModel< PointT > > Ptr
std::string model_name_
The model name.
typename PointCloud::ConstPtr PointCloudConstPtr
~SampleConsensusModelNormalParallelPlane()
Empty destructor.
void setEpsAngle(const double ea)
Set the angle epsilon (delta) threshold.
typename PointCloud::Ptr PointCloudPtr
SampleConsensusModel represents the base model class.
void setDistanceFromOrigin(const double d)
Set the distance we expect the plane to be from the origin.
bool isModelValid(const Eigen::VectorXf &model_coefficients) const override
Check whether a model is valid given the user constraints.
boost::shared_ptr< T > shared_ptr
Alias for boost::shared_ptr.
Eigen::Vector3f getAxis() const
Get the axis along which we need to search for a plane perpendicular to.
void setAxis(const Eigen::Vector3f &ax)
Set the axis along which we need to search for a plane perpendicular to.