|
Ponca
5b0151ad2869758185d699615c3cca5855cc2cee
Point Cloud Analysis library
|
This class contains some stand-alone CorrectedNormalCurrent formulas for triangles, using eigen as linear algebra backend. More...
#include <cncFormulaEigen.h>
Collaboration diagram for Ponca::internal::CNCEigen< DataPoint >:Classes | |
| struct | SphericalTriangle |
| Represents a triangle on a sphere of radius one. More... | |
Public Types | |
| using | MatrixType = typename DataPoint::MatrixType |
| using | Scalar = typename DataPoint::Scalar |
| using | VectorType = typename DataPoint::VectorType |
Static Public Member Functions | |
Functions for computing measures | |
| static Scalar | mu0InterpolatedU (const VectorType &a, const VectorType &b, const VectorType &c, const VectorType &ua, const VectorType &ub, const VectorType &uc, bool unit_u=false) |
| Computes mu0 measure (area) of triangle abc given an interpolated corrected normal vector ua, \ub , uc. | |
| static Scalar | mu1InterpolatedU (const VectorType &a, const VectorType &b, const VectorType &c, const VectorType &ua, const VectorType &ub, const VectorType &uc, bool unit_u=false) |
| Computes mu1 measure (mean curvature) of triangle abc given an interpolated corrected normal vector ua, \ub , uc. | |
| static Scalar | mu2InterpolatedU (const VectorType &a, const VectorType &b, const VectorType &c, const VectorType &ua, const VectorType &ub, const VectorType &uc, bool unit_u=false) |
| Computes mu2 measure (Gaussian curvature) of triangle abc given an interpolated corrected normal vector ua, \ub , uc. | |
| static MatrixType | muXYInterpolatedU (const VectorType &a, const VectorType &b, const VectorType &c, const VectorType &ua, const VectorType &ub, const VectorType &uc, bool unit_u=false) |
| Computes muXY measure (anisotropic curvature) of triangle abc given an interpolated corrected normal vector ua, \ub , uc. | |
Helper functions | |
| static std::pair< VectorType, VectorType > | curvDirFromTensor (const MatrixType &tensor, const Scalar area, const VectorType &N) |
| Computing principal curvatures k1 and k2 from tensor. | |
| static std::tuple< Scalar, Scalar, VectorType, VectorType > | curvaturesFromTensor (const MatrixType &tensor, const Scalar area, const VectorType &N) |
| Computing principal curvatures k1 and k2 from tensor. | |
Static Public Attributes | |
| static constexpr Scalar | epsilon = Eigen::NumTraits<Scalar>::epsilon() |
| Small constant used to approximate zero. | |
This class contains some stand-alone CorrectedNormalCurrent formulas for triangles, using eigen as linear algebra backend.
Definition at line 73 of file cncFormulaEigen.h.
| using Ponca::internal::CNCEigen< DataPoint >::MatrixType = typename DataPoint::MatrixType |
Definition at line 74 of file cncFormulaEigen.h.
| using Ponca::internal::CNCEigen< DataPoint >::Scalar = typename DataPoint::Scalar |
Definition at line 75 of file cncFormulaEigen.h.
| using Ponca::internal::CNCEigen< DataPoint >::VectorType = typename DataPoint::VectorType |
Definition at line 76 of file cncFormulaEigen.h.
|
inlinestatic |
Computing principal curvatures k1 and k2 from tensor.
| tensor | The muXY integrated tensor |
| area | Area of the face |
| N | the normal vector |
Definition at line 340 of file cncFormulaEigen.h.
|
inlinestatic |
Computing principal curvatures k1 and k2 from tensor.
| tensor | The muXY integrated tensor |
| area | Area of the face |
| N | the normal vector |
Definition at line 308 of file cncFormulaEigen.h.
|
inlinestatic |
Computes mu0 measure (area) of triangle abc given an interpolated corrected normal vector ua, \ub , uc.
| a | any point |
| b | any point |
| c | any point |
| ua | the corrected normal vector at point a |
| ub | the corrected normal vector at point b |
| uc | the corrected normal vector at point c |
| unit_u | when 'true' considers that interpolated corrected normals should be made unitary, otherwise interpolated corrected normals may have smaller norms. |
Definition at line 175 of file cncFormulaEigen.h.
|
inlinestatic |
Computes mu1 measure (mean curvature) of triangle abc given an interpolated corrected normal vector ua, \ub , uc.
| a | any point |
| b | any point |
| c | any point |
| ua | the corrected normal vector at point a |
| ub | the corrected normal vector at point b |
| uc | the corrected normal vector at point c |
| unit_u | when 'true' considers that interpolated corrected normals should be made unitary, otherwise interpolated corrected normals may have smaller norms. |
Definition at line 207 of file cncFormulaEigen.h.
|
inlinestatic |
Computes mu2 measure (Gaussian curvature) of triangle abc given an interpolated corrected normal vector ua, \ub , uc.
| a | any point |
| b | any point |
| c | any point |
| ua | the corrected normal vector at point a |
| ub | the corrected normal vector at point b |
| uc | the corrected normal vector at point c |
| unit_u | when 'true' considers that interpolated corrected normals should be made unitary, otherwise interpolated corrected normals may have smaller norms. |
Definition at line 237 of file cncFormulaEigen.h.
|
inlinestatic |
Computes muXY measure (anisotropic curvature) of triangle abc given an interpolated corrected normal vector ua, \ub , uc.
| a | any point |
| b | any point |
| c | any point |
| ua | the corrected normal vector at point a |
| ub | the corrected normal vector at point b |
| uc | the corrected normal vector at point c |
Definition at line 265 of file cncFormulaEigen.h.
|
staticconstexpr |
Small constant used to approximate zero.
Definition at line 78 of file cncFormulaEigen.h.