|
Ponca
97e1aa5c56f0b8ca113a6b95d36cc3b5cde35a4e
Point Cloud Analysis library
|
Compute principal curvatures from a base class providing fundamental forms. More...
#include <weingarten.h>
Inheritance diagram for Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >:
Collaboration diagram for Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >:Public Types | |
| using | Scalar = typename DataPoint::Scalar |
| Alias to scalar type. | |
| using | VectorType = typename Base::VectorType |
| Alias to vector type. | |
| using | NeighborFilter = typename Base::NeighborFilter |
| Alias to the filter applied on the neighbors. | |
| using | Matrix2 = Eigen::Matrix< Scalar, 2, 2 > |
Public Member Functions | |
| FIT_RESULT | finalize () |
| Scalar | kmin () const |
| Returns an estimate of the minimal principal curvature value. | |
| Scalar | kmax () const |
| Returns an estimate of the maximal principal curvature value. | |
| VectorType | kminDirection () const |
| Returns an estimate of the minimal principal curvature direction. | |
| VectorType | kmaxDirection () const |
| Returns an estimate of the maximal principal curvature direction. | |
| Scalar | kMean () const |
| Returns an estimate of the mean curvature. | |
| Scalar | GaussianCurvature () const |
| Returns an estimate of the Gaussian curvature. | |
Protected Types | |
| using | Base = T |
| Base class of the procedure. | |
Compute principal curvatures from a base class providing fundamental forms.
Since the weingarten map is self-adjoint, a basis exists consisting of the eigenvectors of W. The eigenvectors, combined with their eigenvalues, define the principal curvature directions and values. The Gaussian and mean curvatures can be retrieved as \(\text{K} = \text{det}(\text{W})\) and \(\text{H} = \frac{1}{2}\text{trace}(\text{W})\), respectively.
This primitive requires:
ProvidesTangentPlaneBasis, PROVIDES_WEINGARTEN_MAP, ProvidesPrincipalCurvatures
Definition at line 167 of file weingarten.h.
|
protected |
Base class of the procedure.
Definition at line 169 of file weingarten.h.
| using Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >::Matrix2 = Eigen::Matrix<Scalar, 2, 2> |
Definition at line 170 of file weingarten.h.
| using Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >::NeighborFilter = typename Base::NeighborFilter |
Alias to the filter applied on the neighbors.
Definition at line 169 of file weingarten.h.
| using Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >::Scalar = typename DataPoint::Scalar |
Alias to scalar type.
Definition at line 169 of file weingarten.h.
| using Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >::VectorType = typename Base::VectorType |
Alias to vector type.
Definition at line 169 of file weingarten.h.
|
inline |
Definition at line 194 of file weingarten.hpp.
|
inline |
Returns an estimate of the Gaussian curvature.
Definition at line 208 of file weingarten.h.
|
inline |
Returns an estimate of the maximal principal curvature value.
Definition at line 182 of file weingarten.h.
|
inline |
Returns an estimate of the maximal principal curvature direction.
Definition at line 195 of file weingarten.h.
|
inline |
Returns an estimate of the mean curvature.
Definition at line 205 of file weingarten.h.
|
inline |
Returns an estimate of the minimal principal curvature value.
Definition at line 179 of file weingarten.h.
|
inline |
Returns an estimate of the minimal principal curvature direction.
Definition at line 185 of file weingarten.h.