34 #if defined(MongeJetFittingPrincipalCurvaturesEstimator_RECURSES)
35 #error Recursive header files inclusion detected in MongeJetFittingPrincipalCurvaturesEstimator.h
38 #define MongeJetFittingPrincipalCurvaturesEstimator_RECURSES
40 #if !defined MongeJetFittingPrincipalCurvaturesEstimator_h
42 #define MongeJetFittingPrincipalCurvaturesEstimator_h
47 #include <DGtal/base/Common.h>
48 #include <DGtal/topology/SCellsFunctors.h>
51 #error You need to have activated CGAL (WITH_CGAL) to include this file.
55 #include <CGAL/Cartesian.h>
56 #include <CGAL/Monge_via_jet_fitting.h>
76 template <
typename TSurfel,
typename TEmbedder>
102 FATAL_ERROR_MSG(d>=2,
"Polynomial surface degree must be greater than 2");
112 const double aDistance)
114 BOOST_VERIFY(aDistance==aDistance);
133 double k1 = monge_form.principal_curvatures ( 0 );
134 double k2 = monge_form.principal_curvatures ( 1 );
176 #undef MongeJetFittingPrincipalCurvaturesEstimator_RECURSES
Aim: This class encapsulates its parameter class so that to indicate to the user that the object/poin...
Aim: Estimates Gaussian curvature using CGAL Jet Fitting and Monge Form.
unsigned int myD
Degree of the polynomial surface to fit.
CGAL::Monge_via_jet_fitting< CGALKernel > CGALMongeViaJet
CGALMongeViaJet::Monge_form CGALMongeForm
const SCellEmbedder * myEmbedder
Alias of the geometrical embedder.
SCellEmbedder::RealPoint RealPoint
MongeJetFittingPrincipalCurvaturesEstimator(ConstAlias< SCellEmbedder > anEmbedder, const double h, unsigned int d=4)
void pushSurfel(const Surfel &aSurf, const double aDistance)
CGAL::Cartesian< double > CGALKernel
CGALKernel::Point_3 CGALPoint
std::pair< double, double > Quantity
std::vector< CGALPoint > myPoints
Array of CGAL points.
DGtal is the top-level namespace which contains all DGtal functions and types.
PointVector< 3, double > RealPoint