point_cloud_library / 1.12.1 / classpcl_1_1_mesh_smoothing_laplacian_v_t_k.html /

PCL mesh smoothing based on the vtkSmoothPolyDataFilter algorithm from the VTK library. More...

#include <pcl/surface/vtk_smoothing/vtk_mesh_smoothing_laplacian.h>

Public Member Functions

MeshSmoothingLaplacianVTK ()
Empty constructor that sets the values of the algorithm parameters to the VTK defaults. More...
void setNumIter (int num_iter)
Set the number of iterations for the smoothing filter. More...
int getNumIter () const
Get the number of iterations. More...
void setConvergence (float convergence)
Specify a convergence criterion for the iteration process. More...
float getConvergence () const
Get the convergence criterion. More...
void setRelaxationFactor (float relaxation_factor)
Specify the relaxation factor for Laplacian smoothing. More...
float getRelaxationFactor () const
Get the relaxation factor of the Laplacian smoothing. More...
void setFeatureEdgeSmoothing (bool feature_edge_smoothing)
Turn on/off smoothing along sharp interior edges. More...
bool getFeatureEdgeSmoothing () const
Get the status of the feature edge smoothing. More...
void setFeatureAngle (float feature_angle)
Specify the feature angle for sharp edge identification. More...
float getFeatureAngle () const
Get the angle threshold for considering an edge to be sharp. More...
void setEdgeAngle (float edge_angle)
Specify the edge angle to control smoothing along edges (either interior or boundary). More...
float getEdgeAngle () const
Get the edge angle to control smoothing along edges. More...
void setBoundarySmoothing (bool boundary_smoothing)
Turn on/off the smoothing of vertices on the boundary of the mesh. More...
bool getBoundarySmoothing () const
Get the status of the boundary smoothing. More...
- Public Member Functions inherited from pcl::MeshProcessing
MeshProcessing ()
Constructor. More...
virtual ~MeshProcessing ()
Destructor. More...
void setInputMesh (const pcl::PolygonMeshConstPtr &input)
Set the input mesh that we want to process. More...
pcl::PolygonMeshConstPtr getInputMesh () const
Get the input mesh to be processed. More...
void process (pcl::PolygonMesh &output)
Process the input surface mesh and store the results. More...

Protected Member Functions

void performProcessing (pcl::PolygonMesh &output) override
Abstract surface processing method. More...
- Protected Member Functions inherited from pcl::MeshProcessing
virtual bool initCompute ()
Initialize computation. More...
virtual void deinitCompute ()
UnInitialize computation. More...
virtual std::string getClassName () const
Abstract class get name method. More...

Additional Inherited Members

- Public Types inherited from pcl::MeshProcessing
using Ptr = shared_ptr< MeshProcessing >
using ConstPtr = shared_ptr< const MeshProcessing >
using PolygonMeshConstPtr = PolygonMesh::ConstPtr
- Protected Attributes inherited from pcl::MeshProcessing
pcl::PolygonMeshConstPtr input_mesh_
Input polygonal mesh. More...

Detailed Description

PCL mesh smoothing based on the vtkSmoothPolyDataFilter algorithm from the VTK library.

Please check out the original documentation for more details on the inner workings of the algorithm Warning: This wrapper does two fairly computationally expensive conversions from the PCL PolygonMesh data structure to the vtkPolyData data structure and back.

Definition at line 51 of file vtk_mesh_smoothing_laplacian.h.

Constructor & Destructor Documentation

MeshSmoothingLaplacianVTK()

pcl::MeshSmoothingLaplacianVTK::MeshSmoothingLaplacianVTK ( )
inline

Empty constructor that sets the values of the algorithm parameters to the VTK defaults.

Definition at line 55 of file vtk_mesh_smoothing_laplacian.h.

Member Function Documentation

getBoundarySmoothing()

bool pcl::MeshSmoothingLaplacianVTK::getBoundarySmoothing ( ) const
inline

Get the status of the boundary smoothing.

Definition at line 175 of file vtk_mesh_smoothing_laplacian.h.

getConvergence()

float pcl::MeshSmoothingLaplacianVTK::getConvergence ( ) const
inline

Get the convergence criterion.

Definition at line 92 of file vtk_mesh_smoothing_laplacian.h.

getEdgeAngle()

float pcl::MeshSmoothingLaplacianVTK::getEdgeAngle ( ) const
inline

Get the edge angle to control smoothing along edges.

Definition at line 159 of file vtk_mesh_smoothing_laplacian.h.

getFeatureAngle()

float pcl::MeshSmoothingLaplacianVTK::getFeatureAngle ( ) const
inline

Get the angle threshold for considering an edge to be sharp.

Definition at line 143 of file vtk_mesh_smoothing_laplacian.h.

getFeatureEdgeSmoothing()

bool pcl::MeshSmoothingLaplacianVTK::getFeatureEdgeSmoothing ( ) const
inline

Get the status of the feature edge smoothing.

Definition at line 127 of file vtk_mesh_smoothing_laplacian.h.

getNumIter()

int pcl::MeshSmoothingLaplacianVTK::getNumIter ( ) const
inline

Get the number of iterations.

Definition at line 76 of file vtk_mesh_smoothing_laplacian.h.

getRelaxationFactor()

float pcl::MeshSmoothingLaplacianVTK::getRelaxationFactor ( ) const
inline

Get the relaxation factor of the Laplacian smoothing.

Definition at line 111 of file vtk_mesh_smoothing_laplacian.h.

performProcessing()

void pcl::MeshSmoothingLaplacianVTK::performProcessing ( pcl::PolygonMesh & output )
overrideprotectedvirtual

Abstract surface processing method.

Implements pcl::MeshProcessing.

setBoundarySmoothing()

void pcl::MeshSmoothingLaplacianVTK::setBoundarySmoothing ( bool boundary_smoothing )
inline

Turn on/off the smoothing of vertices on the boundary of the mesh.

Parameters
[in] boundary_smoothing decision whether boundary smoothing is on or off

Definition at line 168 of file vtk_mesh_smoothing_laplacian.h.

setConvergence()

void pcl::MeshSmoothingLaplacianVTK::setConvergence ( float convergence )
inline

Specify a convergence criterion for the iteration process.

Smaller numbers result in more smoothing iterations.

Parameters
[in] convergence convergence criterion for the Laplacian smoothing

Definition at line 85 of file vtk_mesh_smoothing_laplacian.h.

setEdgeAngle()

void pcl::MeshSmoothingLaplacianVTK::setEdgeAngle ( float edge_angle )
inline

Specify the edge angle to control smoothing along edges (either interior or boundary).

Parameters
[in] edge_angle the angle to control smoothing along edges

Definition at line 152 of file vtk_mesh_smoothing_laplacian.h.

setFeatureAngle()

void pcl::MeshSmoothingLaplacianVTK::setFeatureAngle ( float feature_angle )
inline

Specify the feature angle for sharp edge identification.

Parameters
[in] feature_angle the angle threshold for considering an edge to be sharp

Definition at line 136 of file vtk_mesh_smoothing_laplacian.h.

setFeatureEdgeSmoothing()

void pcl::MeshSmoothingLaplacianVTK::setFeatureEdgeSmoothing ( bool feature_edge_smoothing )
inline

Turn on/off smoothing along sharp interior edges.

Parameters
[in] feature_edge_smoothing whether to enable/disable smoothing along sharp interior edges

Definition at line 120 of file vtk_mesh_smoothing_laplacian.h.

setNumIter()

void pcl::MeshSmoothingLaplacianVTK::setNumIter ( int num_iter )
inline

Set the number of iterations for the smoothing filter.

Parameters
[in] num_iter the number of iterations

Definition at line 69 of file vtk_mesh_smoothing_laplacian.h.

setRelaxationFactor()

void pcl::MeshSmoothingLaplacianVTK::setRelaxationFactor ( float relaxation_factor )
inline

Specify the relaxation factor for Laplacian smoothing.

As in all iterative methods, the stability of the process is sensitive to this parameter. In general, small relaxation factors and large numbers of iterations are more stable than larger relaxation factors and smaller numbers of iterations.

Parameters
[in] relaxation_factor the relaxation factor of the Laplacian smoothing algorithm

Definition at line 104 of file vtk_mesh_smoothing_laplacian.h.


The documentation for this class was generated from the following file:

© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1_mesh_smoothing_laplacian_v_t_k.html