Developer Documentation
OpenMesh::Smoother::LaplaceSmootherT< Mesh > Class Template Reference

Laplacian Smoothing. More...

#include <libs_required/OpenMesh/src/OpenMesh/Tools/Smoother/LaplaceSmootherT.hh>

Inheritance diagram for OpenMesh::Smoother::LaplaceSmootherT< Mesh >:
OpenMesh::Smoother::SmootherT< Mesh > OpenMesh::Utils::Noncopyable OpenMesh::Smoother::JacobiLaplaceSmootherT< Mesh >

Public Types

typedef SmootherT< Mesh >::Component Component
 
typedef SmootherT< Mesh >::Continuity Continuity
 
typedef SmootherT< Mesh >::Scalar Scalar
 
typedef SmootherT< Mesh >::VertexHandle VertexHandle
 
typedef SmootherT< Mesh >::EdgeHandle EdgeHandle
 
- Public Types inherited from OpenMesh::Smoother::SmootherT< Mesh >
enum  Component { Tangential, Normal, Tangential_and_Normal }
 
enum  Continuity { C0, C1, C2 }
 
typedef Mesh::Scalar Scalar
 
typedef Mesh::Point Point
 
typedef Mesh::Normal NormalType
 
typedef Mesh::VertexHandle VertexHandle
 
typedef Mesh::EdgeHandle EdgeHandle
 

Public Member Functions

 LaplaceSmootherT (Mesh &_mesh)
 
void initialize (Component _comp, Continuity _cont)
 
- Public Member Functions inherited from OpenMesh::Smoother::SmootherT< Mesh >
 SmootherT (Mesh &_mesh)
 constructor & destructor More...
 
void initialize (Component _comp, Continuity _cont)
 
virtual void smooth (unsigned int _n)
 Do _n smoothing iterations.
 
void set_relative_local_error (Scalar _err)
 Set local error relative to bounding box. More...
 
void set_absolute_local_error (Scalar _err)
 Set local error as an absolute value. More...
 
void disable_local_error_check ()
 Disable error control of the smoother. More...
 
void skip_features (bool _state)
 enable or disable feature handling More...
 

Protected Member Functions

Scalar weight (VertexHandle _vh) const
 
Scalar weight (EdgeHandle _eh) const
 
- Protected Member Functions inherited from OpenMesh::Smoother::SmootherT< Mesh >
virtual void compute_new_positions_C0 ()=0
 
virtual void compute_new_positions_C1 ()=0
 
const Point & orig_position (VertexHandle _vh) const
 
const NormalType & orig_normal (VertexHandle _vh) const
 
const Point & new_position (VertexHandle _vh) const
 
void set_new_position (VertexHandle _vh, const Point &_p)
 
bool is_active (VertexHandle _vh) const
 
Component component () const
 
Continuity continuity () const
 

Private Types

enum  LaplaceWeighting { UniformWeighting, CotWeighting }
 
typedef SmootherT< MeshBase
 

Private Member Functions

void compute_weights (LaplaceWeighting _mode)
 

Private Attributes

OpenMesh::VPropHandleT< Scalar > vertex_weights_
 
OpenMesh::EPropHandleT< Scalar > edge_weights_
 

Additional Inherited Members

- Protected Attributes inherited from OpenMesh::Smoother::SmootherT< Mesh >
Meshmesh_
 
bool skip_features_
 

Detailed Description

template<class Mesh>
class OpenMesh::Smoother::LaplaceSmootherT< Mesh >

Laplacian Smoothing.

Definition at line 78 of file LaplaceSmootherT.hh.


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