42 #include <pcl/surface/reconstruction.h> 48 class CoredVectorMeshData;
49 template <
class Real>
struct Point3D;
60 template<
typename Po
intNT>
64 using Ptr = shared_ptr<Poisson<PointNT> >;
65 using ConstPtr = shared_ptr<const Poisson<PointNT> >;
93 std::vector<pcl::Vertices> &polygons)
override;
231 float samples_per_node_;
233 bool output_polygons_;
235 bool no_reset_samples_;
242 bool non_adaptive_weights_;
245 float solver_accuracy_;
247 template<
int Degree>
void 257 #ifdef PCL_NO_PRECOMPILE 258 #include <pcl/surface/impl/poisson.hpp> float getSamplesPerNode()
Get the minimum number of sample points that should fall within an octree node as the octree construc...
bool getManifold()
Get the manifold flag.
int getDegree()
Get the degree parameter.
void setScale(float scale)
Set the ratio between the diameter of the cube used for reconstruction and the diameter of the sample...
shared_ptr< PointCloud< PointT > > Ptr
Defines functions, macros and traits for allocating and using memory.
void setConfidence(bool confidence)
Set the confidence flag.
void setSamplesPerNode(float samples_per_node)
Set the minimum number of sample points that should fall within an octree node as the octree construc...
SurfaceReconstruction represents a base surface reconstruction class.
#define PCL_MAKE_ALIGNED_OPERATOR_NEW
Macro to signal a class requires a custom allocator.
shared_ptr< KdTree< PointT > > Ptr
shared_ptr< const Poisson< PointNT > > ConstPtr
bool getConfidence()
Get the confidence flag.
void setIsoDivide(int iso_divide)
Set the depth at which a block iso-surface extractor should be used to extract the iso-surface...
void setMinDepth(int min_depth)
float getScale()
Get the ratio between the diameter of the cube used for reconstruction and the diameter of the sample...
The Poisson surface reconstruction algorithm.
void setDegree(int degree)
Set the degree parameter.
void setPointWeight(float point_weight)
void setManifold(bool manifold)
Set the manifold flag.
typename KdTree::Ptr KdTreePtr
bool getOutputPolygons()
Get whether the algorithm outputs a polygon mesh or a triangle mesh.
int getIsoDivide()
Get the depth at which a block iso-surface extractor should be used to extract the iso-surface...
Poisson()
Constructor that sets all the parameters to working default values.
void performReconstruction(pcl::PolygonMesh &output) override
Create the surface.
int getDepth()
Get the depth parameter.
int getSolverDivide()
Get the depth at which a block Gauss-Seidel solver is used to solve the Laplacian equation...
typename pcl::PointCloud< PointNT >::Ptr PointCloudPtr
std::string getClassName() const override
Class get name method.
void setSolverDivide(int solver_divide)
Set the the depth at which a block Gauss-Seidel solver is used to solve the Laplacian equation...
shared_ptr< Poisson< PointNT > > Ptr
KdTree represents the base spatial locator class for kd-tree implementations.
Defines all the PCL and non-PCL macros used.
void setDepth(int depth)
Set the maximum depth of the tree that will be used for surface reconstruction.
void setOutputPolygons(bool output_polygons)
Enabling this flag tells the reconstructor to output a polygon mesh (rather than triangulating the re...