DGtal 1.4.0
|
Aim: Utility class to compute curvatures measures induced by (1) the normal cycle induced by a SurfaceMesh, (2) the standard Lipschitz-Killing invariant forms of area and curvatures. More...
#include <DGtal/geometry/meshes/NormalCycleComputer.h>
Public Types | |
typedef TRealPoint | RealPoint |
typedef TRealVector | RealVector |
typedef NormalCycleComputer< RealPoint, RealVector > | Self |
typedef DGtal::SurfaceMesh< RealPoint, RealVector > | SurfaceMesh |
typedef RealVector::Component | Scalar |
typedef SimpleMatrix< Scalar, dimension, dimension > | RealTensor |
typedef NormalCycleFormula< RealPoint, RealVector > | Formula |
typedef SurfaceMeshMeasure< RealPoint, RealVector, Scalar > | ScalarMeasure |
typedef SurfaceMeshMeasure< RealPoint, RealVector, RealTensor > | TensorMeasure |
typedef std::vector< Scalar > | Scalars |
typedef std::vector< RealPoint > | RealPoints |
typedef std::vector< RealVector > | RealVectors |
typedef std::vector< RealTensor > | RealTensors |
typedef SurfaceMesh::Size | Size |
typedef SurfaceMesh::Index | Index |
typedef SurfaceMesh::Vertex | Vertex |
typedef SurfaceMesh::Face | Face |
Public Member Functions | |
BOOST_STATIC_ASSERT ((dimension==3)) | |
NormalCycleComputer (ConstAlias< SurfaceMesh > aMesh) | |
ScalarMeasure | computeMu0 () const |
ScalarMeasure | computeMu1 () const |
ScalarMeasure | computeMu2 () const |
TensorMeasure | computeMuXY () const |
TensorMeasure | computeMuXYs () const |
Static Public Member Functions | |
Formulas for estimating curvatures from measures | |
static Scalar | meanCurvature (Scalar mu0, Scalar mu1) |
static Scalar | GaussianCurvature (Scalar mu0, Scalar mu2) |
static std::tuple< Scalar, Scalar, RealVector, RealVector > | principalCurvatures (Scalar mu0, RealTensor muXY, const RealVector &N) |
Static Public Attributes | |
static const Dimension | dimension = RealPoint::dimension |
Protected Attributes | |
const SurfaceMesh & | myMesh |
A reference to the mesh over which computations are done. | |
Aim: Utility class to compute curvatures measures induced by (1) the normal cycle induced by a SurfaceMesh, (2) the standard Lipschitz-Killing invariant forms of area and curvatures.
Description of template class 'NormalCycleComputer'
TRealPoint | an arbitrary model of RealPoint. |
TRealVector | an arbitrary model of RealVector. |
Definition at line 67 of file NormalCycleComputer.h.
typedef SurfaceMesh::Face DGtal::NormalCycleComputer< TRealPoint, TRealVector >::Face |
Definition at line 87 of file NormalCycleComputer.h.
typedef NormalCycleFormula< RealPoint, RealVector > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::Formula |
Definition at line 77 of file NormalCycleComputer.h.
typedef SurfaceMesh::Index DGtal::NormalCycleComputer< TRealPoint, TRealVector >::Index |
Definition at line 85 of file NormalCycleComputer.h.
typedef TRealPoint DGtal::NormalCycleComputer< TRealPoint, TRealVector >::RealPoint |
Definition at line 69 of file NormalCycleComputer.h.
typedef std::vector< RealPoint > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::RealPoints |
Definition at line 81 of file NormalCycleComputer.h.
typedef SimpleMatrix< Scalar, dimension, dimension > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::RealTensor |
Definition at line 76 of file NormalCycleComputer.h.
typedef std::vector< RealTensor > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::RealTensors |
Definition at line 83 of file NormalCycleComputer.h.
typedef TRealVector DGtal::NormalCycleComputer< TRealPoint, TRealVector >::RealVector |
Definition at line 70 of file NormalCycleComputer.h.
typedef std::vector< RealVector > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::RealVectors |
Definition at line 82 of file NormalCycleComputer.h.
typedef RealVector::Component DGtal::NormalCycleComputer< TRealPoint, TRealVector >::Scalar |
Definition at line 75 of file NormalCycleComputer.h.
typedef SurfaceMeshMeasure< RealPoint, RealVector, Scalar > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::ScalarMeasure |
Definition at line 78 of file NormalCycleComputer.h.
typedef std::vector< Scalar > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::Scalars |
Definition at line 80 of file NormalCycleComputer.h.
typedef NormalCycleComputer< RealPoint, RealVector > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::Self |
Definition at line 71 of file NormalCycleComputer.h.
typedef SurfaceMesh::Size DGtal::NormalCycleComputer< TRealPoint, TRealVector >::Size |
Definition at line 84 of file NormalCycleComputer.h.
typedef DGtal::SurfaceMesh< RealPoint, RealVector > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::SurfaceMesh |
Definition at line 74 of file NormalCycleComputer.h.
typedef SurfaceMeshMeasure< RealPoint, RealVector, RealTensor > DGtal::NormalCycleComputer< TRealPoint, TRealVector >::TensorMeasure |
Definition at line 79 of file NormalCycleComputer.h.
typedef SurfaceMesh::Vertex DGtal::NormalCycleComputer< TRealPoint, TRealVector >::Vertex |
Definition at line 86 of file NormalCycleComputer.h.
DGtal::NormalCycleComputer< TRealPoint, TRealVector >::NormalCycleComputer | ( | ConstAlias< SurfaceMesh > | aMesh | ) |
Constructor from mesh.
aMesh | any simplified mesh that is referenced in this object. |
DGtal::NormalCycleComputer< TRealPoint, TRealVector >::BOOST_STATIC_ASSERT | ( | (dimension==3) | ) |
ScalarMeasure DGtal::NormalCycleComputer< TRealPoint, TRealVector >::computeMu0 | ( | ) | const |
ScalarMeasure DGtal::NormalCycleComputer< TRealPoint, TRealVector >::computeMu1 | ( | ) | const |
ScalarMeasure DGtal::NormalCycleComputer< TRealPoint, TRealVector >::computeMu2 | ( | ) | const |
TensorMeasure DGtal::NormalCycleComputer< TRealPoint, TRealVector >::computeMuXY | ( | ) | const |
TensorMeasure DGtal::NormalCycleComputer< TRealPoint, TRealVector >::computeMuXYs | ( | ) | const |
|
inlinestatic |
mu0 | the mu0 measure (i.e. area) of some set |
mu2 | the mu2 measure (i.e. the Gaussian curvature measue) of the same set |
Definition at line 127 of file NormalCycleComputer.h.
|
inlinestatic |
mu0 | the mu0 measure (i.e. area) of some set |
mu1 | the mu1 measure (i.e. twice the mean curvature measue) of the same set |
Definition at line 118 of file NormalCycleComputer.h.
|
inlinestatic |
mu0 | the mu0 measure (i.e. area) of some set |
muXY | the anisotropic muXY measure (i.e. the second fundamental form measue) of the same set |
N | the normal vector at the location of the set |
Definition at line 141 of file NormalCycleComputer.h.
References DGtal::SimpleMatrix< TComponent, TM, TN >::column(), DGtal::EigenDecomposition< TN, TComponent, TMatrix >::getEigenDecomposition(), and DGtal::SimpleMatrix< TComponent, TM, TN >::transpose().
|
static |
Definition at line 72 of file NormalCycleComputer.h.
|
protected |
A reference to the mesh over which computations are done.
Definition at line 164 of file NormalCycleComputer.h.