Ponca
aa50bfdf187919869239c5b44b748842569114c1
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 (const VectorType &_evalPos) |
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 152 of file primitive.h.
using Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::MatrixType = typename DataPoint::MatrixType |
Inherited matrix type.
Definition at line 170 of file primitive.h.
using Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::Scalar = typename Base::Scalar |
Inherited scalar type.
Definition at line 168 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 177 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 174 of file primitive.h.
using Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::VectorType = typename Base::VectorType |
Inherited vector type.
Definition at line 169 of file primitive.h.
using Ponca::PrimitiveDer< DataPoint, _WFunctor, Type, T >::WFunctor = typename Base::WFunctor |
Weight Function.
Definition at line 171 of file primitive.h.
|
protected |
Enumerator | |
---|---|
Check | Provides base API for primitives. |
Definition at line 158 of file primitive.h.
|
inline |
Definition at line 197 of file primitive.h.
|
inlineconstexpr |
Number of dimensions used for the differentiation.
Definition at line 225 of file primitive.h.
|
inline |
Definition at line 189 of file primitive.h.
|
inlineconstexpr |
State specified at compilation time to differenciate the fit in scale.
Definition at line 221 of file primitive.h.
|
inlineconstexpr |
State specified at compilation time to differenciate the fit in space.
Definition at line 223 of file primitive.h.
|
staticconstexprprotected |
Definition at line 165 of file primitive.h.
|
protected |
Sum of weight derivatives.
Definition at line 181 of file primitive.h.
|
staticconstexprprotected |
Definition at line 164 of file primitive.h.