|
Ponca
4a9354998d048bf882a3ee9bac8105216fa08d13
Point Cloud Analysis library
|
Aggregator class used to declare specialized structures using CRTP. More...
#include <basket.h>
Inheritance diagram for Ponca::Basket< P, NF, Ext0, Exts >:
Collaboration diagram for Ponca::Basket< P, NF, Ext0, Exts >:Public Types | |
| using | Base = typename internal::BasketAggregate< P, NF, 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 | VectorType = typename P::VectorType |
| using | DataPoint = P |
| Point type used for computation. | |
| using | NeighborFilter = NF |
| Weighting function. | |
Public Types inherited from Ponca::BasketComputeObject< Basket< P, NF, Ext0, Exts... >, internal::BasketAggregate< P, NF, Ext0, Exts... >::type > | |
| using | Base = internal::BasketAggregate< P, NF, Ext0, Exts... >::type |
| using | Derived = Basket< P, NF, Ext0, Exts... > |
| < | |
| using | Scalar = typename Base::Scalar |
| Alias to the Derived type. | |
Public Member Functions | |
| void | init () |
| Initialize the fit. | |
| void | startNewPass () |
| Start a new iteration over neighbor. | |
| FIT_RESULT | finalize () |
| Finalize the fitting procedure. | |
| bool | addNeighbor (const DataPoint &_nei) |
| Add a neighbor to perform the fit. | |
| void | addLocalNeighbor (typename P::Scalar _w, const typename P::VectorType &_localQ, const P &_nei) |
| Add a local neighbor to perform the fit. | |
Public Member Functions inherited from Ponca::BasketComputeObject< Basket< P, NF, Ext0, Exts... >, internal::BasketAggregate< P, NF, Ext0, Exts... >::type > | |
| FIT_RESULT | compute (const IteratorBegin &begin, const IteratorEnd &end) |
| Convenience function for STL-like iterators Add neighbors stored in a container using STL-like iterators, and call finalize at the end. | |
| FIT_RESULT | computeWithIds (IndexRange ids, const PointContainer &points) |
| 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. | |
Public Member Functions inherited from Ponca::ComputeObject< Derived > | |
| template<typename Container > | |
| FIT_RESULT | compute (const Container &c) |
| Convenience function for STL-like container. | |
| template<typename IteratorBegin , typename IteratorEnd > | |
| FIT_RESULT | compute (const IteratorBegin &, const IteratorEnd &) |
| Convenience function for STL-like iterators. | |
| template<typename IndexRange , typename PointContainer > | |
| FIT_RESULT | computeWithIds (IndexRange, const PointContainer &) |
| Convenience function to iterate over a subset of samples in a PointContainer. | |
Additional Inherited Members | |
Protected Member Functions inherited from Ponca::ComputeObject< Derived > | |
| Derived & | derived () |
| Retrieve the top layer object Returns a reference to the derived class so that we can use its overwritten methods. | |
Aggregator class used to declare specialized structures using CRTP.
Base ComputeObject for the Basket classes.
Implements the compute methods for fitting: compute, computeWithIds, ... Checkout Fitting Module: User Manual for more details
The various implementations of Ponca::Concept are mixed through specializations of the BasketDiff and Basket classes:
| Derived | Derived class that provides the addNeighbor method (either Basket or BasketDiff) |
| Base | Base class that provides, through the CRTP the init, startNewPass, addNeighbor and finalize methods |
| P | Implements PointConcept |
| W | Implements WeightKernelConcept |
| Ext0 | Implements ComputationalObjectConcept |
| Exts | Implements ComputationalObjectConcept (optional) |
| void Ponca::Basket< P, NF, Ext0, Exts >::addLocalNeighbor | ( | typename P::Scalar | _w, |
| const typename P::VectorType & | _localQ, | ||
| const P & | _nei | ||
| ) |
Add a local neighbor to perform the fit.
When called directly, don't forget to call Fit::startNewPass when starting multiple passes
| w | The weight of the neighbor |
| localQ | The location expressed in local coordinates |
| _nei | The neighbor |
Definition at line 100 of file basket.hpp.
| bool Ponca::Basket< P, NF, Ext0, Exts >::addNeighbor | ( | const DataPoint & | _nei | ) |
Add a neighbor to perform the fit.
When called directly, don't forget to call BasketBaseUnit::startNewPass when starting multiple passes
Definition at line 84 of file basket.hpp.
| FIT_RESULT Ponca::Basket< P, NF, Ext0, Exts >::finalize | ( | ) |
Finalize the fitting procedure.
Definition at line 76 of file basket.hpp.
| void Ponca::Basket< P, NF, Ext0, Exts >::init | ( | ) |
Initialize the fit.
Definition at line 60 of file basket.hpp.
| void Ponca::Basket< P, NF, Ext0, Exts >::startNewPass | ( | ) |
Start a new iteration over neighbor.
/!\ Do not forget to use this function when multiple pass are needed
Definition at line 68 of file basket.hpp.