2template <
class DataPo
int,
class _NFilter,
typename T>
7 m_A = SampleMatrix(6, 6);
10 m_planeIsReady =
false;
13template <
class DataPo
int,
class _NFilter,
typename T>
29 Eigen::Matrix<Scalar, 6, 1>
p;
31 m_A +=
w *
p *
p.transpose();
36template <
class DataPo
int,
class _NFilter,
typename T>
46 m_planeIsReady =
true;
57 Base::quadraticHeightField().setQuadric(
58 m_A.bdcSvd(Eigen::ComputeThinU | Eigen::ComputeThinV | Eigen::NoQRPreconditioner).solve(m_b));
60 return Base::m_eCurrentState =
STABLE;
64template <
class DataPo
int,
class _NFilter,
typename T>
69 m_A = SampleMatrix(4, 4);
72 m_planeIsReady =
false;
75template <
class DataPo
int,
class _NFilter,
typename T>
91 Eigen::Matrix<Scalar, 4, 1>
p;
93 m_A +=
w *
p *
p.transpose();
98template <
class DataPo
int,
class _NFilter,
typename T>
108 m_planeIsReady =
true;
118 Base::quadraticHeightField().setQuadric(
119 m_A.jacobiSvd(Eigen::ComputeThinU | Eigen::ComputeThinV | Eigen::NoQRPreconditioner).solve(m_b));
121 return Base::m_eCurrentState =
STABLE;
Aggregator class used to declare specialized structures using CRTP.
Extension to compute the best fit quadric on 3d points expressed as .
typename DataPoint::Scalar Scalar
Alias to scalar type.
typename Base::VectorType VectorType
Alias to vector type.
Extension to compute the best fit restricted quadric on 3d points expressed as .
typename DataPoint::Scalar Scalar
Alias to scalar type.
typename Base::VectorType VectorType
Alias to vector type.
FIT_RESULT
Enum corresponding to the state of a fitting method (and what the finalize function returns)
@ NEED_OTHER_PASS
The fitting procedure needs to analyse the neighborhood another time.
@ STABLE
The fitting is stable and ready to use.