42 #include <pcl/pcl_config.h>
45 #include <pcl/surface/reconstruction.h>
54 template<
typename Po
intInT>
58 using Ptr = shared_ptr<ConcaveHull<PointInT> >;
59 using ConstPtr = shared_ptr<const ConcaveHull<PointInT> >;
87 std::vector<pcl::Vertices> &polygons);
146 if ((dimension == 2) || (dimension == 3))
149 PCL_ERROR (
"[pcl::%s::setDimension] Invalid input dimension specified!\n",
getClassName ().c_str ());
167 return (
"ConcaveHull");
179 std::vector<pcl::Vertices> &polygons);
208 #ifdef PCL_NO_PRECOMPILE
209 #include <pcl/surface/impl/concave_hull.hpp>
ConcaveHull (alpha shapes) using libqhull library.
void setVoronoiCenters(PointCloudPtr voronoi_centers)
If set, the voronoi cells center will be saved in voronoi_centers
void setKeepInformation(bool value)
If keep_information_is set to true the convex hull points keep other information like rgb,...
pcl::PointIndices hull_indices_
vector containing the point cloud indices of the convex hull points.
double alpha_
The method accepts facets only if the distance from any vertex to the facet->center (center of the vo...
int getDimension() const
Returns the dimensionality (2 or 3) of the calculated hull.
ConcaveHull()=default
Empty constructor.
shared_ptr< ConcaveHull< PointInT > > Ptr
typename PointCloud::ConstPtr PointCloudConstPtr
~ConcaveHull() override=default
Empty destructor.
bool keep_information_
If set to true, the reconstructed point cloud describing the hull is obtained from the original input...
void reconstruct(PointCloud &points, std::vector< pcl::Vertices > &polygons)
Compute a concave hull for all points given.
PointCloudPtr voronoi_centers_
the centers of the voronoi cells
void setAlpha(double alpha)
Set the alpha value, which limits the size of the resultant hull segments (the smaller the more detai...
shared_ptr< const ConcaveHull< PointInT > > ConstPtr
int dim_
the dimensionality of the concave hull
typename PointCloud::Ptr PointCloudPtr
void getHullPointIndices(pcl::PointIndices &hull_point_indices) const
Retrieve the indices of the input point cloud that for the convex hull.
std::string getClassName() const override
Class get name method.
void performReconstruction(PointCloud &points, std::vector< pcl::Vertices > &polygons)
The actual reconstruction method.
double getAlpha()
Returns the alpha parameter, see setAlpha().
void setDimension(int dimension)
Sets the dimension on the input data, 2D or 3D.
MeshConstruction represents a base surface reconstruction class.
shared_ptr< PointCloud< PointInT > > Ptr
shared_ptr< const PointCloud< PointInT > > ConstPtr