Lagrange
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Modules Pages
Filtering Module

Mesh filtering utilities. More...

Classes

struct  SmoothingOptions
 Option struct for anisotropic mesh smoothing. More...
 

Functions

template<typename Scalar , typename Index >
void mesh_smoothing (SurfaceMesh< Scalar, Index > &mesh, const SmoothingOptions &options={})
 Perform anisotropic mesh smoothing. More...
 

Detailed Description

Mesh filtering utilities.

Function Documentation

◆ mesh_smoothing()

void mesh_smoothing ( SurfaceMesh< Scalar, Index > &  mesh,
const SmoothingOptions options = {} 
)

#include <lagrange/filtering/mesh_smoothing.h>

Perform anisotropic mesh smoothing.

  • The mesh need not be manifold.
  • The mesh can have self-intersections
  • The mesh can be disconnected
  • The mesh can have boundaries
  • The mesh should not have degenerate (i.e. zero-area) triangles. (Strictly speaking, it should not have vertices all of whose incident triangles are degenerate.)
Parameters
[in,out]meshTriangle mesh to smooth.
[in]optionsSmoothing options.
Template Parameters
ScalarMesh scalar type.
IndexMesh index type.