The Poisson surface reconstruction algorithm. More...
#include <pcl/surface/poisson.h>
Public Types | |
using | Ptr = shared_ptr< Poisson< PointNT > > |
using | ConstPtr = shared_ptr< const Poisson< PointNT > > |
using | PointCloudPtr = typename pcl::PointCloud< PointNT >::Ptr |
using | KdTree = pcl::KdTree< PointNT > |
using | KdTreePtr = typename KdTree::Ptr |
Public Types inherited from pcl::SurfaceReconstruction< PointNT > | |
using | Ptr = shared_ptr< SurfaceReconstruction< PointNT > > |
using | ConstPtr = shared_ptr< const SurfaceReconstruction< PointNT > > |
Public Types inherited from pcl::PCLSurfaceBase< PointNT > | |
using | Ptr = shared_ptr< PCLSurfaceBase< PointNT > > |
using | ConstPtr = shared_ptr< const PCLSurfaceBase< PointNT > > |
using | KdTree = pcl::search::Search< PointNT > |
using | KdTreePtr = typename KdTree::Ptr |
Public Types inherited from pcl::PCLBase< PointNT > | |
using | PointCloud = pcl::PointCloud< PointNT > |
using | PointCloudPtr = typename PointCloud::Ptr |
using | PointCloudConstPtr = typename PointCloud::ConstPtr |
using | PointIndicesPtr = PointIndices::Ptr |
using | PointIndicesConstPtr = PointIndices::ConstPtr |
Public Member Functions | |
Poisson () | |
Constructor that sets all the parameters to working default values. More... |
|
~Poisson () | |
Destructor. More... |
|
void | performReconstruction (pcl::PolygonMesh &output) override |
Create the surface. More... |
|
void | performReconstruction (pcl::PointCloud< PointNT > &points, std::vector< pcl::Vertices > &polygons) override |
Create the surface. More... |
|
void | setDepth (int depth) |
Set the maximum depth of the tree that will be used for surface reconstruction. More... |
|
int | getDepth () |
Get the depth parameter. More... |
|
void | setMinDepth (int min_depth) |
int | getMinDepth () |
void | setPointWeight (float point_weight) |
float | getPointWeight () |
void | setScale (float scale) |
Set the ratio between the diameter of the cube used for reconstruction and the diameter of the samples' bounding cube. More... |
|
float | getScale () |
Get the ratio between the diameter of the cube used for reconstruction and the diameter of the samples' bounding cube. More... |
|
void | setSolverDivide (int solver_divide) |
Set the the depth at which a block Gauss-Seidel solver is used to solve the Laplacian equation. More... |
|
int | getSolverDivide () |
Get the depth at which a block Gauss-Seidel solver is used to solve the Laplacian equation. More... |
|
void | setIsoDivide (int iso_divide) |
Set the depth at which a block iso-surface extractor should be used to extract the iso-surface. More... |
|
int | getIsoDivide () |
Get the depth at which a block iso-surface extractor should be used to extract the iso-surface. More... |
|
void | setSamplesPerNode (float samples_per_node) |
Set the minimum number of sample points that should fall within an octree node as the octree construction is adapted to sampling density. More... |
|
float | getSamplesPerNode () |
Get the minimum number of sample points that should fall within an octree node as the octree construction is adapted to sampling density. More... |
|
void | setConfidence (bool confidence) |
Set the confidence flag. More... |
|
bool | getConfidence () |
Get the confidence flag. More... |
|
void | setOutputPolygons (bool output_polygons) |
Enabling this flag tells the reconstructor to output a polygon mesh (rather than triangulating the results of Marching Cubes). More... |
|
bool | getOutputPolygons () |
Get whether the algorithm outputs a polygon mesh or a triangle mesh. More... |
|
void | setDegree (int degree) |
Set the degree parameter. More... |
|
int | getDegree () |
Get the degree parameter. More... |
|
void | setManifold (bool manifold) |
Set the manifold flag. More... |
|
bool | getManifold () |
Get the manifold flag. More... |
|
void | setThreads (int threads) |
Set the number of threads to use. More... |
|
int | getThreads () |
Get the number of threads. More... |
|
Public Member Functions inherited from pcl::SurfaceReconstruction< PointNT > | |
SurfaceReconstruction () | |
Constructor. More... |
|
~SurfaceReconstruction () | |
Destructor. More... |
|
void | reconstruct (pcl::PolygonMesh &output) override |
Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()> More... |
|
virtual void | reconstruct (pcl::PointCloud< PointNT > &points, std::vector< pcl::Vertices > &polygons) |
Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()> More... |
|
Public Member Functions inherited from pcl::PCLSurfaceBase< PointNT > | |
PCLSurfaceBase () | |
Empty constructor. More... |
|
~PCLSurfaceBase () | |
Empty destructor. More... |
|
void | setSearchMethod (const KdTreePtr &tree) |
Provide an optional pointer to a search object. More... |
|
KdTreePtr | getSearchMethod () |
Get a pointer to the search method used. More... |
|
Public Member Functions inherited from pcl::PCLBase< PointNT > | |
PCLBase () | |
Empty constructor. More... |
|
PCLBase (const PCLBase &base) | |
Copy constructor. More... |
|
virtual | ~PCLBase ()=default |
Destructor. More... |
|
virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
Provide a pointer to the input dataset. More... |
|
const PointCloudConstPtr | getInputCloud () const |
Get a pointer to the input point cloud dataset. More... |
|
virtual void | setIndices (const IndicesPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... |
|
virtual void | setIndices (const IndicesConstPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... |
|
virtual void | setIndices (const PointIndicesConstPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... |
|
virtual void | setIndices (std::size_t row_start, std::size_t col_start, std::size_t nb_rows, std::size_t nb_cols) |
Set the indices for the points laying within an interest region of the point cloud. More... |
|
IndicesPtr | getIndices () |
Get a pointer to the vector of indices used. More... |
|
const IndicesConstPtr | getIndices () const |
Get a pointer to the vector of indices used. More... |
|
const PointNT & | operator[] (std::size_t pos) const |
Override PointCloud operator[] to shorten code. More... |
|
Protected Member Functions | |
std::string | getClassName () const override |
Class get name method. More... |
|
Protected Member Functions inherited from pcl::PCLSurfaceBase< PointNT > | |
virtual std::string | getClassName () const |
Abstract class get name method. More... |
|
Protected Member Functions inherited from pcl::PCLBase< PointNT > | |
bool | initCompute () |
This method should get called before starting the actual computation. More... |
|
bool | deinitCompute () |
This method should get called after finishing the actual computation. More... |
|
Additional Inherited Members | |
Protected Attributes inherited from pcl::SurfaceReconstruction< PointNT > | |
bool | check_tree_ |
A flag specifying whether or not the derived reconstruction algorithm needs the search object tree. More... |
|
Protected Attributes inherited from pcl::PCLSurfaceBase< PointNT > | |
KdTreePtr | tree_ |
A pointer to the spatial search object. More... |
|
Protected Attributes inherited from pcl::PCLBase< PointNT > | |
PointCloudConstPtr | input_ |
The input point cloud dataset. More... |
|
IndicesPtr | indices_ |
A pointer to the vector of point indices to use. More... |
|
bool | use_indices_ |
Set to true if point indices are used. More... |
|
bool | fake_indices_ |
If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More... |
|
The Poisson surface reconstruction algorithm.
using pcl::Poisson< PointNT >::ConstPtr = shared_ptr<const Poisson<PointNT> > |
using pcl::Poisson< PointNT >::KdTree = pcl::KdTree<PointNT> |
using pcl::Poisson< PointNT >::KdTreePtr = typename KdTree::Ptr |
using pcl::Poisson< PointNT >::PointCloudPtr = typename pcl::PointCloud<PointNT>::Ptr |
using pcl::Poisson< PointNT >::Ptr = shared_ptr<Poisson<PointNT> > |
pcl::Poisson< PointNT >::Poisson |
Constructor that sets all the parameters to working default values.
Definition at line 64 of file poisson.hpp.
pcl::Poisson< PointNT >::~Poisson |
Destructor.
Definition at line 90 of file poisson.hpp.
| inlineoverrideprotected |
| inline |
| inline |
| inline |
| inline |
| inline |
| inline |
| inline |
| inline |
| inline |
| inline |
| inline |
| inline |
| overridevirtual |
Create the surface.
[out] | points | the vertex positions of the resulting mesh |
[out] | polygons | the connectivity of the resulting mesh |
Implements pcl::SurfaceReconstruction< PointNT >.
Definition at line 247 of file poisson.hpp.
References pcl::poisson::Point3D< Real >::coords, pcl::poisson::CoredMeshData::inCorePoints, pcl::poisson::CoredVectorMeshData::nextOutOfCorePoint(), pcl::poisson::CoredVectorMeshData::nextPolygon(), pcl::poisson::CoredVectorMeshData::outOfCorePointCount(), pcl::poisson::CoredVectorMeshData::polygonCount(), pcl::PointCloud< PointT >::resize(), and pcl::Vertices::vertices.
| overridevirtual |
Create the surface.
[out] | output | the resultant polygonal mesh |
Implements pcl::SurfaceReconstruction< PointNT >.
Definition at line 167 of file poisson.hpp.
References pcl::PolygonMesh::cloud, pcl::poisson::Point3D< Real >::coords, pcl::poisson::CoredMeshData::inCorePoints, pcl::poisson::CoredVectorMeshData::nextOutOfCorePoint(), pcl::poisson::CoredVectorMeshData::nextPolygon(), pcl::poisson::CoredVectorMeshData::outOfCorePointCount(), pcl::poisson::CoredVectorMeshData::polygonCount(), pcl::PolygonMesh::polygons, pcl::PointCloud< PointT >::resize(), pcl::toPCLPointCloud2(), and pcl::Vertices::vertices.
| inline |
Set the confidence flag.
[in] | confidence | the given flag |
| inline |
| inline |
Set the maximum depth of the tree that will be used for surface reconstruction.
[in] | depth | the depth parameter |
| inline |
Set the depth at which a block iso-surface extractor should be used to extract the iso-surface.
[in] | iso_divide | the given parameter value |
| inline |
| inline |
| inline |
| inline |
| inline |
Set the minimum number of sample points that should fall within an octree node as the octree construction is adapted to sampling density.
[in] | samples_per_node | the given parameter value |
| inline |
| inline |
Set the the depth at which a block Gauss-Seidel solver is used to solve the Laplacian equation.
[in] | solver_divide | the given parameter value |
void pcl::Poisson< PointNT >::setThreads | ( | int | threads | ) |
Set the number of threads to use.
[in] | threads | the number of threads |
Definition at line 96 of file poisson.hpp.
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_poisson.html