Ponca
f7f7d7cc113b4e53be6bee25005fbdbe7e016293
Point Cloud Analysis library
|
Generic class performing the Fit derivation. More...
#include <primitive.h>
Public Types | |
using | Scalar = typename Base::Scalar |
Inherited scalar type. | |
using | VectorType = typename Base::VectorType |
Inherited vector type. | |
using | MatrixType = typename DataPoint::MatrixType |
Inherited matrix type. | |
using | WFunctor = typename Base::WFunctor |
Weight Function. | |
typedef Eigen::Matrix< Scalar, DataPoint::Dim, NbDerivatives, DerStorageOrder > | VectorArray |
Static array of scalars with a size adapted to the differentiation type. | |
typedef Eigen::Matrix< Scalar, 1, NbDerivatives > | ScalarArray |
Static array of scalars with a size adapted to the differentiation type. | |
Public Member Functions | |
void | init () |
bool | addLocalNeighbor (Scalar w, const VectorType &localQ, const DataPoint &attributes, ScalarArray &dw) |
constexpr bool | isScaleDer () const |
State specified at compilation time to differenciate the fit in scale. | |
constexpr bool | isSpaceDer () const |
State specified at compilation time to differenciate the fit in space. | |
constexpr unsigned int | derDimension () const |
Number of dimensions used for the differentiation. | |
Protected Types | |
enum | { Check = Base::PROVIDES_PRIMITIVE_BASE , PROVIDES_PRIMITIVE_DERIVATIVE } |
Protected Attributes | |
ScalarArray | m_dSumW |
Sum of weight derivatives. | |
Static Protected Attributes | |
static constexpr int | NbDerivatives = ((Type & FitScaleDer) ? 1 : 0 ) + ((Type & FitSpaceDer) ? DataPoint::Dim : 0) |
static constexpr int | DerStorageOrder = (Type & FitSpaceDer) ? Eigen::RowMajor : Eigen::ColMajor |
Generic class performing the Fit derivation.
The differentiation can be done automatically in scale and/or space, by combining the enum values FitScaleDer and FitSpaceDer in the template parameter Type.
The differentiated values are stored in static arrays. The size of the arrays is computed with respect to the derivation type (scale and/or space) and the number of the dimension of the ambiant space. By convention, the scale derivatives are stored at index 0 when Type contains at least FitScaleDer. The size of these arrays can be known using derDimension(), and the differentiation type by isScaleDer() and isSpaceDer().
Definition at line 151 of file primitive.h.
using Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::MatrixType = typename DataPoint::MatrixType |
Inherited matrix type.
Definition at line 169 of file primitive.h.
using Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::Scalar = typename Base::Scalar |
Inherited scalar type.
Definition at line 167 of file primitive.h.
typedef Eigen::Matrix<Scalar, 1, NbDerivatives> Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::ScalarArray |
Static array of scalars with a size adapted to the differentiation type.
Definition at line 176 of file primitive.h.
typedef Eigen::Matrix<Scalar, DataPoint::Dim, NbDerivatives, DerStorageOrder> Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::VectorArray |
Static array of scalars with a size adapted to the differentiation type.
Definition at line 173 of file primitive.h.
using Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::VectorType = typename Base::VectorType |
Inherited vector type.
Definition at line 168 of file primitive.h.
using Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::WFunctor = typename Base::WFunctor |
Weight Function.
Definition at line 170 of file primitive.h.
|
protected |
Enumerator | |
---|---|
Check | Provides base API for primitives. |
Definition at line 157 of file primitive.h.
|
inline |
Definition at line 196 of file primitive.h.
|
inlineconstexpr |
Number of dimensions used for the differentiation.
Definition at line 224 of file primitive.h.
|
inline |
Definition at line 188 of file primitive.h.
|
inlineconstexpr |
State specified at compilation time to differenciate the fit in scale.
Definition at line 220 of file primitive.h.
|
inlineconstexpr |
State specified at compilation time to differenciate the fit in space.
Definition at line 222 of file primitive.h.
|
staticconstexprprotected |
Definition at line 164 of file primitive.h.
|
protected |
Sum of weight derivatives.
Definition at line 180 of file primitive.h.
|
staticconstexprprotected |
Definition at line 163 of file primitive.h.