Ponca
aa50bfdf187919869239c5b44b748842569114c1
Point Cloud Analysis library
|
Aggregator class used to declare specialized structures using CRTP. More...
#include <basket.h>
Public Types | |
using | Base = typename internal::BasketAggregate< P, W, Ext0, Exts... >::type |
Base type, which aggregates all the computational objects using the CRTP. | |
using | Scalar = typename P::Scalar |
Scalar type used for computation, as defined from template parameter P | |
using | DataPoint = P |
Point type used for computation. | |
using | WeightFunction = W |
Weighting function. | |
Public Member Functions | |
template<typename IteratorBegin , typename IteratorEnd > | |
FIT_RESULT | compute (const IteratorBegin &begin, const IteratorEnd &end) |
Convenience function for STL-like iterators | |
template<typename IndexRange , typename PointContainer > | |
FIT_RESULT | computeWithIds (IndexRange ids, const PointContainer &points) |
Convenience function to iterate over a subset of samples in a PointContainer | |
template<typename Container > | |
FIT_RESULT | compute (const Container &c) |
Convenience function for STL-like iterators | |
bool | addNeighbor (const DataPoint &_nei) |
Add a neighbor to perform the fit. | |
Aggregator class used to declare specialized structures using CRTP.
This is one of the central classes of the library (even if it does not perform any computation on its own). Checkout Fitting Module: User Manual for more details.
The various implementations of Ponca::Concept are mixed through specializations of the Basket class:
P | Implements PointConcept |
W | Implements WeightKernelConcept |
Ext0 | Implements ComputationalObjectConcept |
Exts | Implements ComputationalObjectConcept (optional) |
using Ponca::Basket< P, W, Ext0, Exts >::Base = typename internal::BasketAggregate<P, W, Ext0, Exts...>::type |
using Ponca::Basket< P, W, Ext0, Exts >::DataPoint = P |
using Ponca::Basket< P, W, Ext0, Exts >::Scalar = typename P::Scalar |
using Ponca::Basket< P, W, Ext0, Exts >::WeightFunction = W |
|
inline |
Add a neighbor to perform the fit.
When called directly, don't forget to call PrimitiveBase::startNewPass when starting multiple passes
|
inline |
Convenience function for STL-like iterators
Add neighbors stored in a container using STL-like iterators, and call finalize at the end.
The fit is evaluated multiple time if needed (see NEED_OTHER_PASS)
|
inline |
Convenience function for STL-like iterators
Add neighbors stored in a container using STL-like iterators, and call finalize at the end.
The fit is evaluated multiple time if needed (see NEED_OTHER_PASS)
|
inline |
Convenience function to iterate over a subset of samples in a PointContainer
Add neighbors stored in a PointContainer and sampled using indices stored in ids.
IndexRange | STL-Like range storing indices of the neighbors |
PointContainer | STL-like container storing the points |