Reen::PoissonReconstruction Class Reference
#include <SurfaceTriangulation.h>
Public Member Functions | |
void | perform (const std::vector< Base::Vector3f > &normals) |
Pass the normals to the points given in the constructor. More... | |
void | perform (int ksearch=5) |
Set the number of k nearest neighbors to use for the normal estimation. More... | |
PoissonReconstruction (const Points::PointKernel &, Mesh::MeshObject &) | |
void | setDepth (int depth) |
Set the maximum depth of the tree that will be used for surface reconstruction. More... | |
void | setSamplesPerNode (float samplesPerNode) |
Set the minimum number of sample points that should fall within an octree node as the octree construction is adapted to sampling density. More... | |
void | setSolverDivide (int solverDivide) |
Set the depth at which a block Gauss-Seidel solver is used to solve the Laplacian equation. More... | |
Constructor & Destructor Documentation
◆ PoissonReconstruction()
Reen::PoissonReconstruction::PoissonReconstruction | ( | const Points::PointKernel & | , |
Mesh::MeshObject & | |||
) |
Member Function Documentation
◆ perform() [1/2]
void Reen::PoissonReconstruction::perform | ( | const std::vector< Base::Vector3f > & | normals | ) |
Pass the normals to the points given in the constructor.
- Parameters
-
[in] normals the normals to the given points.
◆ perform() [2/2]
void Reen::PoissonReconstruction::perform | ( | int | ksearch = 5 | ) |
Set the number of k nearest neighbors to use for the normal estimation.
- Parameters
-
[in] k the number of k-nearest neighbors
◆ setDepth()
void Reen::PoissonReconstruction::setDepth | ( | int | depth | ) |
Set the maximum depth of the tree that will be used for surface reconstruction.
- Note
- Running at depth d corresponds to solving on a voxel grid whose resolution is no larger than 2^d x 2^d x 2^d. Note that since the reconstructor adapts the octree to the sampling density, the specified reconstruction depth is only an upper bound.
- Parameters
-
[in] depth the depth parameter
◆ setSamplesPerNode()
void Reen::PoissonReconstruction::setSamplesPerNode | ( | float | samplesPerNode | ) |
Set the minimum number of sample points that should fall within an octree node as the octree construction is adapted to sampling density.
- Note
- For noise-free samples, small values in the range [1.0 - 5.0] can be used. For more noisy samples, larger values in the range [15.0 - 20.0] may be needed to provide a smoother, noise-reduced, reconstruction.
- Parameters
-
[in] samples_per_node the given parameter value
◆ setSolverDivide()
void Reen::PoissonReconstruction::setSolverDivide | ( | int | solverDivide | ) |
Set the depth at which a block Gauss-Seidel solver is used to solve the Laplacian equation.
- Note
- Using this parameter helps reduce the memory overhead at the cost of a small increase in reconstruction time. (In practice, we have found that for reconstructions of depth 9 or higher a subdivide depth of 7 or 8 can greatly reduce the memory usage.)
- Parameters
-
[in] solver_divide the given parameter value
The documentation for this class was generated from the following file:
- src/Mod/ReverseEngineering/App/SurfaceTriangulation.h