39 #ifndef VTK_MESH_SMOOTHING_LAPLACIAN_H_
40 #define VTK_MESH_SMOOTHING_LAPLACIAN_H_
42 #include <pcl/surface/processing.h>
43 #include <pcl/surface/vtk_smoothing/vtk.h>
61 , relaxation_factor_ (0.01f)
62 , feature_edge_smoothing_ (false)
63 , feature_angle_ (45.f)
65 , boundary_smoothing_ (true)
90 convergence_ = convergence;
109 relaxation_factor_ = relaxation_factor;
116 return relaxation_factor_;
125 feature_edge_smoothing_ = feature_edge_smoothing;
132 return feature_edge_smoothing_;
141 feature_angle_ = feature_angle;
148 return feature_angle_;
157 edge_angle_ = edge_angle;
173 boundary_smoothing_ = boundary_smoothing;
180 return boundary_smoothing_;
193 float relaxation_factor_;
194 bool feature_edge_smoothing_;
195 float feature_angle_;
197 bool boundary_smoothing_;
void setFeatureEdgeSmoothing(bool feature_edge_smoothing)
Turn on/off smoothing along sharp interior edges.
void setEdgeAngle(float edge_angle)
Specify the edge angle to control smoothing along edges (either interior or boundary).
float getConvergence()
Get the convergence criterion.
PCL mesh smoothing based on the vtkSmoothPolyDataFilter algorithm from the VTK library.
void setRelaxationFactor(float relaxation_factor)
Specify the relaxation factor for Laplacian smoothing.
float getEdgeAngle()
Get the edge angle to control smoothing along edges.
void setBoundarySmoothing(bool boundary_smoothing)
Turn on/off the smoothing of vertices on the boundary of the mesh.
bool getFeatureEdgeSmoothing()
Get the status of the feature edge smoothing.
void setFeatureAngle(float feature_angle)
Specify the feature angle for sharp edge identification.
void setNumIter(int num_iter)
Set the number of iterations for the smoothing filter.
MeshSmoothingLaplacianVTK()
Empty constructor that sets the values of the algorithm parameters to the VTK defaults.
float getRelaxationFactor()
Get the relaxation factor of the Laplacian smoothing.
float getFeatureAngle()
Get the angle threshold for considering an edge to be sharp.
int getNumIter()
Get the number of iterations.
MeshProcessing represents the base class for mesh processing algorithms.
bool getBoundarySmoothing()
Get the status of the boundary smoothing.
void setConvergence(float convergence)
Specify a convergence criterion for the iteration process.