DGtal 1.4.0
|
Aim: Estimates normal vector using CGAL Jet Fitting and Monge Form. More...
#include <DGtal/geometry/surfaces/estimation/estimationFunctors/MongeJetFittingNormalVectorEstimator.h>
Public Types | |
typedef TSurfel | Surfel |
typedef TEmbedder | SCellEmbedder |
typedef SCellEmbedder::RealPoint | RealPoint |
typedef RealPoint | Quantity |
typedef CGAL::Cartesian< double > | CGALKernel |
typedef CGALKernel::Point_3 | CGALPoint |
typedef CGALKernel::Vector_3 | CGALVector |
typedef CGAL::Monge_via_jet_fitting< CGALKernel > | CGALMongeViaJet |
typedef CGALMongeViaJet::Monge_form | CGALMongeForm |
Public Member Functions | |
MongeJetFittingNormalVectorEstimator (ConstAlias< SCellEmbedder > anEmbedder, const double h, unsigned int d=4) | |
void | pushSurfel (const Surfel &aSurf, const double aDistance) |
Quantity | eval () |
void | reset () |
Private Attributes | |
const SCellEmbedder * | myEmbedder |
Alias of the geometrical embedder. | |
std::vector< CGALPoint > | myPoints |
Array of CGAL points. | |
double | myH |
unsigned int | myD |
Degree of the polynomial surface to fit. | |
Aim: Estimates normal vector using CGAL Jet Fitting and Monge Form.
Description of template class 'MongeJetFittingNormalVectorEstimator'
As discussed in MongeJetFittingMeanCurvatureEstimator, only the estimated normal vector is given up to a sign. Hence, depending on the local orientation of the surface, you would problably have to reverse the estimated vector \( \vec{n} \) to \( -\vec{n}\).
model of concepts::CLocalEstimatorFromSurfelFunctor
TSurfel | type of surfels |
TEmbedder | type of functors which embed surfel to \( \mathbb{R}^3\) |
Definition at line 81 of file MongeJetFittingNormalVectorEstimator.h.
typedef CGAL::Cartesian<double> DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::CGALKernel |
Definition at line 90 of file MongeJetFittingNormalVectorEstimator.h.
typedef CGALMongeViaJet::Monge_form DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::CGALMongeForm |
Definition at line 94 of file MongeJetFittingNormalVectorEstimator.h.
typedef CGAL::Monge_via_jet_fitting<CGALKernel> DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::CGALMongeViaJet |
Definition at line 93 of file MongeJetFittingNormalVectorEstimator.h.
typedef CGALKernel::Point_3 DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::CGALPoint |
Definition at line 91 of file MongeJetFittingNormalVectorEstimator.h.
typedef CGALKernel::Vector_3 DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::CGALVector |
Definition at line 92 of file MongeJetFittingNormalVectorEstimator.h.
typedef RealPoint DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::Quantity |
Definition at line 88 of file MongeJetFittingNormalVectorEstimator.h.
typedef SCellEmbedder::RealPoint DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::RealPoint |
Definition at line 87 of file MongeJetFittingNormalVectorEstimator.h.
typedef TEmbedder DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::SCellEmbedder |
Definition at line 86 of file MongeJetFittingNormalVectorEstimator.h.
typedef TSurfel DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::Surfel |
Definition at line 85 of file MongeJetFittingNormalVectorEstimator.h.
|
inline |
Constructor.
anEmbedder | embedder to map surfel to R^n. |
h | grid step |
d | degree of the polynomial surface to fit (default d=4). |
Definition at line 103 of file MongeJetFittingNormalVectorEstimator.h.
|
inline |
Evaluate the normal vector from Monge form.
Definition at line 131 of file MongeJetFittingNormalVectorEstimator.h.
References DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::myD, and DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::myPoints.
|
inline |
Add the geometrical embedding of a surfel to the point list
aSurf | a surfel to add |
aDistance | distance of aSurf to the neighborhood boundary |
Definition at line 116 of file MongeJetFittingNormalVectorEstimator.h.
References DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::myEmbedder, DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::myH, and DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::myPoints.
|
inline |
Reset the point list.
Definition at line 147 of file MongeJetFittingNormalVectorEstimator.h.
References DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::myPoints.
|
private |
Degree of the polynomial surface to fit.
Definition at line 165 of file MongeJetFittingNormalVectorEstimator.h.
Referenced by DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::eval().
|
private |
Alias of the geometrical embedder.
Definition at line 156 of file MongeJetFittingNormalVectorEstimator.h.
Referenced by DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::pushSurfel().
|
private |
Definition at line 162 of file MongeJetFittingNormalVectorEstimator.h.
Referenced by DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::pushSurfel().
|
private |
Array of CGAL points.
Definition at line 159 of file MongeJetFittingNormalVectorEstimator.h.
Referenced by DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::eval(), DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::pushSurfel(), and DGtal::functors::MongeJetFittingNormalVectorEstimator< TSurfel, TEmbedder >::reset().