Management, updating and computation of per-vertex and per-face normals. More...
#include <vcg/complex/trimesh/update/curvature.h>
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. |
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.
typedef MeshType::CoordType vcg::tri::UpdateCurvature< MeshType >::CoordType |
Definition at line 98 of file vcg/complex/trimesh/update/curvature.h.
typedef MeshType::FaceIterator vcg::tri::UpdateCurvature< MeshType >::FaceIterator |
Definition at line 92 of file vcg/complex/trimesh/update/curvature.h.
typedef MeshType::FacePointer vcg::tri::UpdateCurvature< MeshType >::FacePointer |
Definition at line 91 of file vcg/complex/trimesh/update/curvature.h.
typedef MeshType::FaceType vcg::tri::UpdateCurvature< MeshType >::FaceType |
Definition at line 90 of file vcg/complex/trimesh/update/curvature.h.
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.
typedef vcg::GridStaticPtr<VertexType, ScalarType > vcg::tri::UpdateCurvature< MeshType >::PointsGridType |
Definition at line 310 of file vcg/complex/trimesh/update/curvature.h.
typedef CoordType::ScalarType vcg::tri::UpdateCurvature< MeshType >::ScalarType |
Definition at line 99 of file vcg/complex/trimesh/update/curvature.h.
typedef MeshType::VertContainer vcg::tri::UpdateCurvature< MeshType >::VertContainer |
Definition at line 94 of file vcg/complex/trimesh/update/curvature.h.
typedef MeshType::VertexIterator vcg::tri::UpdateCurvature< MeshType >::VertexIterator |
Definition at line 93 of file vcg/complex/trimesh/update/curvature.h.
typedef MeshType::VertexPointer vcg::tri::UpdateCurvature< MeshType >::VertexPointer |
Definition at line 96 of file vcg/complex/trimesh/update/curvature.h.
typedef MeshType::VertexType vcg::tri::UpdateCurvature< MeshType >::VertexType |
Definition at line 95 of file vcg/complex/trimesh/update/curvature.h.
typedef vcg::face::VFIterator<FaceType> vcg::tri::UpdateCurvature< MeshType >::VFIteratorType |
Definition at line 97 of file vcg/complex/trimesh/update/curvature.h.
static void vcg::tri::UpdateCurvature< MeshType >::MeanAndGaussian | ( | MeshType & | m | ) | [inline, static] |
Computes the discrete gaussian curvature.
For further details, please, refer to:
Definition at line 399 of file vcg/complex/trimesh/update/curvature.h.
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.
static void vcg::tri::UpdateCurvature< MeshType >::PrincipalDirectionsNormalCycles | ( | MeshType & | m | ) | [inline, static] |
Definition at line 612 of file vcg/complex/trimesh/update/curvature.h.
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.
static void vcg::tri::UpdateCurvature< MeshType >::VertexCurvature | ( | MeshType & | m | ) | [inline, static] |
Definition at line 594 of file vcg/complex/trimesh/update/curvature.h.
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.
Definition at line 530 of file vcg/complex/trimesh/update/curvature.h.