|
Ponca
7abd0fd82719106ad460aa0f2070dffbe375d727
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 () |
| Finalize the procedure. | |
| 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 166 of file weingarten.h.
|
protected |
Base class of the procedure.
Definition at line 168 of file weingarten.h.
| using Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >::Matrix2 = Eigen::Matrix<Scalar, 2, 2> |
Definition at line 169 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 168 of file weingarten.h.
| using Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >::Scalar = typename DataPoint::Scalar |
Alias to scalar type.
Definition at line 168 of file weingarten.h.
| using Ponca::internal::WeingartenCurvatureEstimatorBase< DataPoint, _NFilter, T >::VectorType = typename Base::VectorType |
Alias to vector type.
Definition at line 168 of file weingarten.h.
|
inline |
Finalize the procedure.
Definition at line 194 of file weingarten.hpp.
|
inline |
Returns an estimate of the Gaussian curvature.
Definition at line 207 of file weingarten.h.
|
inline |
Returns an estimate of the maximal principal curvature value.
Definition at line 181 of file weingarten.h.
|
inline |
Returns an estimate of the maximal principal curvature direction.
Definition at line 194 of file weingarten.h.
|
inline |
Returns an estimate of the mean curvature.
Definition at line 204 of file weingarten.h.
|
inline |
Returns an estimate of the minimal principal curvature value.
Definition at line 178 of file weingarten.h.
|
inline |
Returns an estimate of the minimal principal curvature direction.
Definition at line 184 of file weingarten.h.