41 #include <pcl/surface/processing.h>
42 #include <pcl/surface/vtk_smoothing/vtk.h>
79 pass_band_ = pass_band;
98 normalize_coordinates_ = normalize_coordinates;
105 return normalize_coordinates_;
114 feature_edge_smoothing_ = feature_edge_smoothing;
121 return feature_edge_smoothing_;
130 feature_angle_ = feature_angle;
137 return feature_angle_;
146 edge_angle_ = edge_angle;
163 boundary_smoothing_ = boundary_smoothing;
170 return boundary_smoothing_;
181 float pass_band_{0.1f};
182 bool feature_edge_smoothing_{
false};
183 float feature_angle_{45.f};
184 float edge_angle_{15.f};
185 bool boundary_smoothing_{
true};
186 bool normalize_coordinates_{
false};
MeshProcessing represents the base class for mesh processing algorithms.
PCL mesh smoothing based on the vtkWindowedSincPolyDataFilter algorithm from the VTK library.
float getFeatureAngle() const
Get the angle threshold for considering an edge to be sharp.
bool getFeatureEdgeSmoothing() const
Get the status of the feature edge smoothing.
float getEdgeAngle() const
Get the edge angle to control smoothing along edges.
void setFeatureEdgeSmoothing(bool feature_edge_smoothing)
Turn on/off smoothing along sharp interior edges.
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.
void setEdgeAngle(float edge_angle)
Specify the edge angle to control smoothing along edges (either interior or boundary).
bool getNormalizeCoordinates() const
Get whether the coordinate normalization is active or not.
bool getBoundarySmoothing() const
Get the status of the boundary smoothing.
void setPassBand(float pass_band)
Set the pass band value for windowed sinc filtering.
void setNormalizeCoordinates(bool normalize_coordinates)
Turn on/off coordinate normalization.
void performProcessing(pcl::PolygonMesh &output) override
Abstract surface processing method.
float getPassBand() const
Get the pass band value.
MeshSmoothingWindowedSincVTK()=default
Empty constructor that sets the values of the algorithm parameters to the VTK defaults.
int getNumIter() const
Get the number of iterations.
void setBoundarySmoothing(bool boundary_smoothing)
Turn on/off the smoothing of vertices on the boundary of the mesh.