Class WaveletOctree
Defined in File wavelet_octree.h
Inheritance Relationships
Base Type
public wavemap::MapBase
(Class MapBase)
Class Documentation
-
class WaveletOctree : public wavemap::MapBase
Public Types
-
using Ptr = std::shared_ptr<WaveletOctree>
-
using ConstPtr = std::shared_ptr<const WaveletOctree>
-
using Config = WaveletOctreeConfig
-
using Coefficients = HaarCoefficients<FloatingPoint, kDim>
-
using Transform = HaarTransform<FloatingPoint, kDim>
-
using NodeType = NdtreeNode<typename Coefficients::Details, kDim>
Public Functions
-
inline explicit WaveletOctree(const WaveletOctreeConfig &config)
-
virtual void threshold() override
Threshold the occupancy values of all cells in the map to stay within the range specified by its min_log_odds and max_log_odds.
-
virtual void prune() override
Free up memory by pruning nodes that are no longer needed.
Note
Implementations of this pruning operation should be lossless and does not alter the estimated occupancy posterior.
-
inline OctreeIndex::ChildArray getFirstChildIndices() const
-
virtual Index3D getMinIndex() const override
Index of the minimum corner of the map’s Axis Aligned Bounding Box.
-
virtual Index3D getMaxIndex() const override
Index of the maximum corner of the map’s Axis Aligned Bounding Box.
-
inline Index3D getMinPossibleIndex() const
-
inline Index3D getMaxPossibleIndex() const
-
inline virtual IndexElement getTreeHeight() const override
Height of the octree used to store the map.
Note
This value is only defined for multi-resolution maps.
-
inline const WaveletOctreeConfig &getConfig()
-
inline virtual FloatingPoint getCellValue(const Index3D &index) const override
Query the value of the map at a given index.
-
inline FloatingPoint getCellValue(const OctreeIndex &index) const
-
inline virtual void setCellValue(const Index3D &index, FloatingPoint new_value) override
Set the value of the map at a given index.
-
inline void setCellValue(const OctreeIndex &index, FloatingPoint new_value)
-
inline virtual void addToCellValue(const Index3D &index, FloatingPoint update) override
Increment the value of the map at a given index.
-
inline void addToCellValue(const OctreeIndex &index, FloatingPoint update)
-
virtual void forEachLeaf(typename MapBase::IndexedLeafVisitorFunction visitor_fn) const override
-
inline Coefficients::Scale &getRootScale()
-
inline const Coefficients::Scale &getRootScale() const
-
inline NodeType &getRootNode()
-
inline const NodeType &getRootNode() const
-
template<TraversalOrder traversal_order>
inline auto getNodeIterator()
-
template<TraversalOrder traversal_order>
inline auto getNodeIterator() const
-
using Ptr = std::shared_ptr<WaveletOctree>