vcg::tri::UpdateQuality< UpdateMeshType > Class Template Reference
[Trimesh]

Generation of per-vertex and per-face qualities. More...

#include <vcg/complex/trimesh/update/quality.h>

List of all members.

Classes

class  VQualityHeap

Public Types

typedef MeshType::FaceIterator FaceIterator
typedef MeshType::FacePointer FacePointer
typedef MeshType::FaceType FaceType
typedef UpdateMeshType MeshType
typedef MeshType::ScalarType ScalarType
typedef MeshType::VertexIterator VertexIterator
typedef MeshType::VertexPointer VertexPointer
typedef MeshType::VertexType VertexType

Static Public Member Functions

static void FaceConstant (MeshType &m, float q)
static void VertexClamp (MeshType &m, float qmin, float qmax)
static void VertexConstant (MeshType &m, float q)
static void VertexFromAbsoluteCurvature (MeshType &m)
static void VertexFromGaussianCurvature (MeshType &m)
static void VertexFromMeanCurvature (MeshType &m)
static void VertexFromRMSCurvature (MeshType &m)
static void VertexGeodesicFromBorder (MeshType &m)
 Compute, for each vertex of the mesh the geodesic distance from the border of the mesh itself.
static void VertexSaturate (MeshType &m, ScalarType gradientThr=1.0)

Detailed Description

template<class UpdateMeshType>
class vcg::tri::UpdateQuality< UpdateMeshType >

Generation of per-vertex and per-face qualities.

It works according to various strategy, like geodesic distance from the border (UpdateQuality::VertexGeodesicFromBorder) or curvature ecc. This class is templated over the mesh and (like all other Update* classes) has only static members; Typical usage:

MyMeshType m;
UpdateQuality<MyMeshType>::VertexGeodesicFromBorder(m);

Definition at line 48 of file quality.h.


Member Typedef Documentation

template<class UpdateMeshType >
typedef MeshType::FaceIterator vcg::tri::UpdateQuality< UpdateMeshType >::FaceIterator

Definition at line 58 of file quality.h.

template<class UpdateMeshType >
typedef MeshType::FacePointer vcg::tri::UpdateQuality< UpdateMeshType >::FacePointer

Definition at line 57 of file quality.h.

template<class UpdateMeshType >
typedef MeshType::FaceType vcg::tri::UpdateQuality< UpdateMeshType >::FaceType

Definition at line 56 of file quality.h.

template<class UpdateMeshType >
typedef UpdateMeshType vcg::tri::UpdateQuality< UpdateMeshType >::MeshType

Definition at line 51 of file quality.h.

template<class UpdateMeshType >
typedef MeshType::ScalarType vcg::tri::UpdateQuality< UpdateMeshType >::ScalarType

Definition at line 52 of file quality.h.

template<class UpdateMeshType >
typedef MeshType::VertexIterator vcg::tri::UpdateQuality< UpdateMeshType >::VertexIterator

Definition at line 55 of file quality.h.

template<class UpdateMeshType >
typedef MeshType::VertexPointer vcg::tri::UpdateQuality< UpdateMeshType >::VertexPointer

Definition at line 54 of file quality.h.

template<class UpdateMeshType >
typedef MeshType::VertexType vcg::tri::UpdateQuality< UpdateMeshType >::VertexType

Definition at line 53 of file quality.h.


Member Function Documentation

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::FaceConstant ( MeshType m,
float  q 
) [inline, static]

Assign to each face of the mesh a constant quality value. Useful for initialization.

Definition at line 192 of file quality.h.

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::VertexClamp ( MeshType m,
float  qmin,
float  qmax 
) [inline, static]

Clamp each vertex of the mesh with a range of values.

Definition at line 183 of file quality.h.

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::VertexConstant ( MeshType m,
float  q 
) [inline, static]

Assign to each vertex of the mesh a constant quality value. Useful for initialization.

Definition at line 174 of file quality.h.

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::VertexFromAbsoluteCurvature ( MeshType m  )  [inline, static]

Definition at line 230 of file quality.h.

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::VertexFromGaussianCurvature ( MeshType m  )  [inline, static]

Definition at line 200 of file quality.h.

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::VertexFromMeanCurvature ( MeshType m  )  [inline, static]

Definition at line 207 of file quality.h.

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::VertexFromRMSCurvature ( MeshType m  )  [inline, static]

Definition at line 249 of file quality.h.

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::VertexGeodesicFromBorder ( MeshType m  )  [inline, static]

Compute, for each vertex of the mesh the geodesic distance from the border of the mesh itself.

It uses the classical Dijkstra Shortest Path Tree algorithm. The geodesic distance is approximated by allowing to walk only along edges of the mesh.

Warning:
VF topology, Per Vertex Quality and border flags already computed (see UpdateFlags::FaceBorderFromVF and UpdateTopology::VertexFace);

Definition at line 105 of file quality.h.

template<class UpdateMeshType >
static void vcg::tri::UpdateQuality< UpdateMeshType >::VertexSaturate ( MeshType m,
ScalarType  gradientThr = 1.0 
) [inline, static]

Definition at line 264 of file quality.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


vcglib
Author(s): Christian Bersch
autogenerated on Fri Jan 11 09:23:36 2013