24 using BoxT =
typename T::BoxT;
34 [[nodiscard]]
static NodeId
rootNodeId() {
return NodeId{ 0 }; }
#define MRMESH_API
Definition MRMeshFwd.h:80
#define MRMESH_CLASS
Definition MRMeshFwd.h:87
base class for most AABB-trees (except for AABBTreePoints)
Definition MRAABBTreeBase.h:15
std::vector<T>-like container that requires specific indexing type,
Definition MRVector.h:23
NodeVec nodes_
Definition MRAABBTreeBase.h:63
NodeBitSet getNodesFromLeaves(const LeafBitSet &leaves) const
returns set of nodes containing among direct or indirect children given leaves
void getLeafOrderAndReset(LeafBMap &leafMap)
typename T::BoxT BoxT
Definition MRAABBTreeBase.h:24
size_t numLeaves() const
returns the number of leaves in whole tree
Definition MRAABBTreeBase.h:43
AABBTreeNode< Traits > Node
Definition MRAABBTreeBase.h:18
const NodeVec & nodes() const
const-access to all nodes
Definition MRAABBTreeBase.h:28
void getLeafOrder(LeafBMap &leafMap) const
T Traits
Definition MRAABBTreeBase.h:17
BMap< LeafId, LeafId > LeafBMap
Definition MRAABBTreeBase.h:23
Vector< Node, NodeId > NodeVec
Definition MRAABBTreeBase.h:19
typename T::LeafTag LeafTag
Definition MRAABBTreeBase.h:20
std::vector< NodeId > getSubtrees(int minNum) const
returns at least given number of top-level not-intersecting subtrees, union of which contain all tree...
TypedBitSet< Id< T > > TaggedBitSet
Definition MRMeshFwd.h:169
TaggedBitSet< LeafTag > LeafBitSet
Definition MRAABBTreeBase.h:22
LeafBitSet getSubtreeLeaves(NodeId subtreeRoot) const
returns all leaves in the subtree with given root
BoxT getBoundingBox() const
returns the root node bounding box
Definition MRAABBTreeBase.h:37
static NodeId rootNodeId()
returns root node id
Definition MRAABBTreeBase.h:34
const Node & operator[](NodeId nid) const
const-access to any node
Definition MRAABBTreeBase.h:31
size_t heapBytes() const
returns the amount of memory this object occupies on heap
Definition MRAABBTreeBase.h:40
typename T::LeafId LeafId
Definition MRAABBTreeBase.h:21
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRAABBTreeNode.h:31
flat map: I -> T
Definition MRBuffer.h:136