41 #ifndef PCL_SAMPLE_CONSENSUS_IMPL_SAC_MODEL_PARALLEL_PLANE_H_
42 #define PCL_SAMPLE_CONSENSUS_IMPL_SAC_MODEL_PARALLEL_PLANE_H_
44 #include <pcl/sample_consensus/sac_model_parallel_plane.h>
47 template <
typename Po
intT>
void
49 const Eigen::VectorXf &model_coefficients,
const double threshold, std::vector<int> &inliers)
52 if (!isModelValid (model_coefficients))
62 template <
typename Po
intT>
int
64 const Eigen::VectorXf &model_coefficients,
const double threshold)
const
67 if (!isModelValid (model_coefficients))
74 template <
typename Po
intT>
void
76 const Eigen::VectorXf &model_coefficients, std::vector<double> &distances)
const
79 if (!isModelValid (model_coefficients))
89 template <
typename Po
intT>
bool
99 Eigen::Vector4f coeff = model_coefficients;
103 Eigen::Vector4f axis (axis_[0], axis_[1], axis_[2], 0);
104 if (fabs (axis.dot (coeff)) > sin_angle_)
111 #define PCL_INSTANTIATE_SampleConsensusModelParallelPlane(T) template class PCL_EXPORTS pcl::SampleConsensusModelParallelPlane<T>;
113 #endif // PCL_SAMPLE_CONSENSUS_IMPL_SAC_MODEL_PARALLEL_PLANE_H_
void getDistancesToModel(const Eigen::VectorXf &model_coefficients, std::vector< double > &distances) const
Compute all distances from the cloud data to a given plane model.
virtual int countWithinDistance(const Eigen::VectorXf &model_coefficients, const double threshold) const
Count all the points which respect the given model coefficients as inliers.
SampleConsensusModel represents the base model class.
virtual bool isModelValid(const Eigen::VectorXf &model_coefficients) const
Check whether a model is valid given the user constraints.
void selectWithinDistance(const Eigen::VectorXf &model_coefficients, const double threshold, std::vector< int > &inliers)
Select all the points which respect the given model coefficients as inliers.
SampleConsensusModelPlane defines a model for 3D plane segmentation.