OpenMesh::Smoother::SmootherT< Mesh > Class Template Reference

#include <SmootherT.hh>

Inheritance diagram for OpenMesh::Smoother::SmootherT< Mesh >:

Inheritance graph
[legend]
Collaboration diagram for OpenMesh::Smoother::SmootherT< Mesh >:

Collaboration graph
[legend]

Public Types

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

 SmootherT (Mesh &_mesh)
void initialize (Component _comp, Continuity _cont)
virtual void smooth (unsigned int _n)
 Do _n smoothing iterations.
void set_active_vertices ()
 Find active vertices. Resets tagged status !
void set_relative_local_error (Scalar _err)
 Set local error.
void set_absolute_local_error (Scalar _err)
void disable_local_error_check ()

Protected Member Functions

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

Protected Attributes

Mesh & mesh_

Detailed Description

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

Base class for smoothing algorithms.

Member Enumeration Documentation

template<class Mesh>
enum OpenMesh::Smoother::SmootherT::Component

Enumerator:
Tangential  Smooth tangential direction.
Normal  Smooth normal direction.
Tangential_and_Normal  Smooth tangential and normal direction.


Member Function Documentation

template<class Mesh>
void OpenMesh::Smoother::SmootherT< Mesh >::initialize ( Component  _comp,
Continuity  _cont 
) [inline]

Initialize smoother

Parameters:
_comp Determine component to smooth
_cont 

Reimplemented in OpenMesh::Smoother::LaplaceSmootherT< Mesh >.


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

Generated on Fri Jan 16 13:04:17 2009 by  doxygen 1.5.5