VTK
|
compute curvatures (Gauss and mean) of a Polydata object More...
#include <vtkCurvatures.h>
Inherits vtkPolyDataAlgorithm.
Public Types | |
typedef vtkPolyDataAlgorithm | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkCurvatures * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual void | SetCurvatureType (int) |
virtual int | GetCurvatureType () |
void | SetCurvatureTypeToGaussian () |
void | SetCurvatureTypeToMean () |
void | SetCurvatureTypeToMaximum () |
void | SetCurvatureTypeToMinimum () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkCurvatures * | SafeDownCast (vtkObjectBase *o) |
static vtkCurvatures * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
void | GetGaussCurvature (vtkPolyData *output) |
void | GetMeanCurvature (vtkPolyData *output) |
void | GetMaximumCurvature (vtkPolyData *input, vtkPolyData *output) |
void | GetMinimumCurvature (vtkPolyData *input, vtkPolyData *output) |
Protected Attributes | |
int | CurvatureType |
int | InvertMeanCurvature |
virtual void | SetInvertMeanCurvature (int) |
virtual int | GetInvertMeanCurvature () |
virtual void | InvertMeanCurvatureOn () |
virtual void | InvertMeanCurvatureOff () |
vtkCurvatures () | |
compute curvatures (Gauss and mean) of a Polydata object
vtkCurvatures takes a polydata input and computes the curvature of the mesh at each point. Four possible methods of computation are available :
Gauss Curvature discrete Gauss curvature (K) computation, The contribution of every facet is for the moment weighted by
The units of Gaussian Curvature are
Mean Curvature
NB: dihedral_angle is the ORIENTED angle between -PI and PI, this means that the surface is assumed to be orientable the computation creates the orientation The units of Mean Curvature are [1/m]
Maximum ( ) and Minimum (
) Principal Curvatures
Excepting spherical and planar surfaces which have equal principal curvatures, the curvature at a point on a surface varies with the direction one "sets off" from the point. For all directions, the curvature will pass through two extrema: a minimum (
) and a maximum (
) which occur at mutually orthogonal directions to each other.
NB. The sign of the Gauss curvature is a geometric ivariant, it should be +ve when the surface looks like a sphere, -ve when it looks like a saddle, however, the sign of the Mean curvature is not, it depends on the convention for normals - This code assumes that normals point outwards (ie from the surface of a sphere outwards). If a given mesh produces curvatures of opposite senses then the flag InvertMeanCurvature can be set and the Curvature reported by the Mean calculation will be inverted.
Definition at line 76 of file vtkCurvatures.h.
typedef vtkPolyDataAlgorithm vtkCurvatures::Superclass |
Definition at line 79 of file vtkCurvatures.h.
|
protected |
Set/Get the flag which inverts the mean curvature calculation for meshes with inward pointing normals (default false)
|
static |
|
virtual |
|
static |
|
protectedvirtual |
vtkCurvatures* vtkCurvatures::NewInstance | ( | ) | const |
void vtkCurvatures::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
static |
Construct with curvature type set to Gauss
|
virtual |
Set/Get Curvature type VTK_CURVATURE_GAUSS: Gaussian curvature, stored as DataArray "Gauss_Curvature" VTK_CURVATURE_MEAN : Mean curvature, stored as DataArray "Mean_Curvature"
|
virtual |
Set/Get Curvature type VTK_CURVATURE_GAUSS: Gaussian curvature, stored as DataArray "Gauss_Curvature" VTK_CURVATURE_MEAN : Mean curvature, stored as DataArray "Mean_Curvature"
|
inline |
Set/Get Curvature type VTK_CURVATURE_GAUSS: Gaussian curvature, stored as DataArray "Gauss_Curvature" VTK_CURVATURE_MEAN : Mean curvature, stored as DataArray "Mean_Curvature"
Definition at line 91 of file vtkCurvatures.h.
|
inline |
Set/Get Curvature type VTK_CURVATURE_GAUSS: Gaussian curvature, stored as DataArray "Gauss_Curvature" VTK_CURVATURE_MEAN : Mean curvature, stored as DataArray "Mean_Curvature"
Definition at line 93 of file vtkCurvatures.h.
|
inline |
Set/Get Curvature type VTK_CURVATURE_GAUSS: Gaussian curvature, stored as DataArray "Gauss_Curvature" VTK_CURVATURE_MEAN : Mean curvature, stored as DataArray "Mean_Curvature"
Definition at line 95 of file vtkCurvatures.h.
|
inline |
Set/Get Curvature type VTK_CURVATURE_GAUSS: Gaussian curvature, stored as DataArray "Gauss_Curvature" VTK_CURVATURE_MEAN : Mean curvature, stored as DataArray "Mean_Curvature"
Definition at line 97 of file vtkCurvatures.h.
|
virtual |
Set/Get the flag which inverts the mean curvature calculation for meshes with inward pointing normals (default false)
|
virtual |
Set/Get the flag which inverts the mean curvature calculation for meshes with inward pointing normals (default false)
|
virtual |
Set/Get the flag which inverts the mean curvature calculation for meshes with inward pointing normals (default false)
|
virtual |
Set/Get the flag which inverts the mean curvature calculation for meshes with inward pointing normals (default false)
|
protected |
|
protected |
discrete Gauss curvature (K) computation, cf http://www-ipg.umds.ac.uk/p.batchelor/curvatures/curvatures.html
|
protected |
|
protected |
Maximum principal curvature
|
protected |
Minimum principal curvature
|
protected |
Definition at line 130 of file vtkCurvatures.h.
|
protected |
Definition at line 131 of file vtkCurvatures.h.