vcg::tri::UpdateCurvature< MeshType > Class Template Reference
[Trimesh]

Management, updating and computation of per-vertex and per-face normals. More...

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

List of all members.

Classes

struct  AdjVertex
class  AreaData

Public Types

typedef MeshType::CoordType CoordType
typedef MeshType::FaceIterator FaceIterator
typedef MeshType::FacePointer FacePointer
typedef MeshType::FaceType FaceType
typedef vcg::GridStaticPtr
< FaceType, ScalarType
MeshGridType
typedef vcg::GridStaticPtr
< VertexType, ScalarType
PointsGridType
typedef CoordType::ScalarType ScalarType
typedef MeshType::VertContainer VertContainer
typedef MeshType::VertexIterator VertexIterator
typedef MeshType::VertexPointer VertexPointer
typedef MeshType::VertexType VertexType
typedef vcg::face::VFIterator
< FaceType
VFIteratorType

Static Public Member Functions

static void MeanAndGaussian (MeshType &m)
 Computes the discrete gaussian curvature.
static void PrincipalDirections (MeshType &m)
 Compute principal direction and magniuto of curvature.
static void PrincipalDirectionsNormalCycles (MeshType &m)
static void PrincipalDirectionsPCA (MeshType &m, ScalarType r, bool pointVSfaceInt=true)
static void VertexCurvature (MeshType &m)
static float VertexCurvature (VertexPointer v, bool norm=true)
 Update the mean and the gaussian curvature of a vertex.

Detailed Description

template<class MeshType>
class vcg::tri::UpdateCurvature< MeshType >

Management, updating and computation of per-vertex and per-face normals.

This class is used to compute or update the normals that can be stored in the vertex or face component of a mesh.

Definition at line 86 of file vcg/complex/trimesh/update/curvature.h.


Member Typedef Documentation

template<class MeshType >
typedef MeshType::CoordType vcg::tri::UpdateCurvature< MeshType >::CoordType

Definition at line 98 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef MeshType::FaceIterator vcg::tri::UpdateCurvature< MeshType >::FaceIterator

Definition at line 92 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef MeshType::FacePointer vcg::tri::UpdateCurvature< MeshType >::FacePointer

Definition at line 91 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef MeshType::FaceType vcg::tri::UpdateCurvature< MeshType >::FaceType

Definition at line 90 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef vcg::GridStaticPtr<FaceType, ScalarType > vcg::tri::UpdateCurvature< MeshType >::MeshGridType

Curvature meseaure as described in the paper: Robust principal curvatures on Multiple Scales, Yong-Liang Yang, Yu-Kun Lai, Shi-Min Hu Helmut Pottmann SGP 2004 If pointVSfaceInt==true the covariance is computed by montecarlo sampling on the mesh (faster) If pointVSfaceInt==false the covariance is computed by (analytic)integration over the surface (slower)

Definition at line 309 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef vcg::GridStaticPtr<VertexType, ScalarType > vcg::tri::UpdateCurvature< MeshType >::PointsGridType

Definition at line 310 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef CoordType::ScalarType vcg::tri::UpdateCurvature< MeshType >::ScalarType

Definition at line 99 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef MeshType::VertContainer vcg::tri::UpdateCurvature< MeshType >::VertContainer

Definition at line 94 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef MeshType::VertexIterator vcg::tri::UpdateCurvature< MeshType >::VertexIterator

Definition at line 93 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef MeshType::VertexPointer vcg::tri::UpdateCurvature< MeshType >::VertexPointer

Definition at line 96 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef MeshType::VertexType vcg::tri::UpdateCurvature< MeshType >::VertexType

Definition at line 95 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
typedef vcg::face::VFIterator<FaceType> vcg::tri::UpdateCurvature< MeshType >::VFIteratorType

Definition at line 97 of file vcg/complex/trimesh/update/curvature.h.


Member Function Documentation

template<class MeshType >
static void vcg::tri::UpdateCurvature< MeshType >::MeanAndGaussian ( MeshType &  m  )  [inline, static]

Computes the discrete gaussian curvature.

For further details, please, refer to:

  • Discrete Differential-Geometry Operators for Triangulated 2-Manifolds Mark Meyer, Mathieu Desbrun, Peter Schroder, Alan H. Barr VisMath '02, Berlin

Definition at line 399 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
static void vcg::tri::UpdateCurvature< MeshType >::PrincipalDirections ( MeshType &  m  )  [inline, static]

Compute principal direction and magniuto of curvature.

Definition at line 125 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
static void vcg::tri::UpdateCurvature< MeshType >::PrincipalDirectionsNormalCycles ( MeshType &  m  )  [inline, static]

Definition at line 612 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
static void vcg::tri::UpdateCurvature< MeshType >::PrincipalDirectionsPCA ( MeshType &  m,
ScalarType  r,
bool  pointVSfaceInt = true 
) [inline, static]

Definition at line 312 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
static void vcg::tri::UpdateCurvature< MeshType >::VertexCurvature ( MeshType &  m  )  [inline, static]

Definition at line 594 of file vcg/complex/trimesh/update/curvature.h.

template<class MeshType >
static float vcg::tri::UpdateCurvature< MeshType >::VertexCurvature ( VertexPointer  v,
bool  norm = true 
) [inline, static]

Update the mean and the gaussian curvature of a vertex.

The function uses the VF adiacency to walk around the vertex.

Returns:
It will return the voronoi area around the vertex. If (norm == true) the mean and the gaussian curvature are normalized. Based on the paper "Optimizing 3d triangulations using discrete curvature analysis"

Definition at line 530 of file vcg/complex/trimesh/update/curvature.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