MeshLib C# Docs
Loading...
Searching...
No Matches

bounding volume hierarchy Generated from class MR.AABBTree. Base classes: Direct: (non-virtual) MR::AABBTreeBase<MR::AABBTreeTraits<MR::FaceTag, MR.Box3f>> This is the non-const half of the class. More...

Inheritance diagram for MR.AABBTree:

Public Member Functions

unsafe AABBTree ()
 Constructs an empty (default-constructed) instance.
unsafe AABBTree (MR._ByValue_AABBTree _other)
 Generated from constructor MR.AABBTree.AABBTree.
unsafe AABBTree (MR.Const_MeshPart mp)
 creates tree for given mesh or its part Generated from constructor MR.AABBTree.AABBTree.
unsafe MR.AABBTree assign (MR._ByValue_AABBTree _other)
 Generated from method MR::AABBTree::operator=.
unsafe void refit (MR.Const_Mesh mesh, MR.Const_VertBitSet changedVerts)
 updates bounding boxes of the nodes containing changed vertices; this is a faster alternative to full tree rebuild (but the tree after refit might be less efficient)
unsafe void getLeafOrderAndReset (MR.FaceBMap leafMap)
 fills map: LeafId -> leaf#, then resets leaf order to 0,1,2,...; buffer in leafMap must be resized before the call, and caller is responsible for filling missing leaf elements Generated from method MR.AABBTree.getLeafOrderAndReset.
Public Member Functions inherited from MR.Const_AABBTree
virtual void Dispose ()
unsafe Const_AABBTree ()
 Constructs an empty (default-constructed) instance.
unsafe Const_AABBTree (MR._ByValue_AABBTree _other)
 Generated from constructor MR.AABBTree.AABBTree.
unsafe Const_AABBTree (MR.Const_MeshPart mp)
 creates tree for given mesh or its part Generated from constructor MR.AABBTree.AABBTree.
unsafe MR.Const_Vector_MRAABBTreeNodeMRAABBTreeTraitsMRFaceTagMRBox3f_MRNodeId nodes ()
 const-access to all nodes Generated from method MR.AABBTree.nodes.
unsafe MR.Box3f getBoundingBox ()
 returns the root node bounding box Generated from method MR.AABBTree.getBoundingBox.
unsafe ulong heapBytes ()
 returns the amount of memory this object occupies on heap Generated from method MR.AABBTree.heapBytes.
unsafe ulong numLeaves ()
 returns the number of leaves in whole tree Generated from method MR.AABBTree.numLeaves.
unsafe MR.Std.Vector_MRNodeId getSubtrees (int minNum)
 returns at least given number of top-level not-intersecting subtrees, union of which contain all tree leaves Generated from method MR.AABBTree.getSubtrees.
unsafe MR.FaceBitSet getSubtreeLeaves (MR.NodeId subtreeRoot)
 returns all leaves in the subtree with given root Generated from method MR.AABBTree.getSubtreeLeaves.
unsafe MR.NodeBitSet getNodesFromLeaves (MR.Const_FaceBitSet leaves)
 returns set of nodes containing among direct or indirect children given leaves Generated from method MR.AABBTree.getNodesFromLeaves.
unsafe void getLeafOrder (MR.FaceBMap leafMap)
 fills map: LeafId -> leaf#; buffer in leafMap must be resized before the call, and caller is responsible for filling missing leaf elements Generated from method MR.AABBTree.getLeafOrder.

Static Public Member Functions

static unsafe implicit operator MR.AABBTreeBase_MRAABBTreeTraitsMRFaceTagMRBox3f (AABBTree self)
Static Public Member Functions inherited from MR.Const_AABBTree
static unsafe implicit operator MR.Const_AABBTreeBase_MRAABBTreeTraitsMRFaceTagMRBox3f (Const_AABBTree self)
static MR.NodeId rootNodeId ()
 returns root node id Generated from method MR.AABBTree.rootNodeId.

Additional Inherited Members

Protected Member Functions inherited from MR.Const_AABBTree
virtual unsafe void Dispose (bool disposing)
Properties inherited from MR.Const_AABBTree
unsafe MR.Const_AABBTreeNode_MRAABBTreeTraitsMRFaceTagMRBox3f this[MR.NodeId nid] [get]
 const-access to any node Generated from method MR::AABBTree::operator[].

Detailed Description

bounding volume hierarchy Generated from class MR.AABBTree. Base classes: Direct: (non-virtual) MR::AABBTreeBase<MR::AABBTreeTraits<MR::FaceTag, MR.Box3f>> This is the non-const half of the class.

Constructor & Destructor Documentation

◆ AABBTree() [1/3]

unsafe MR.AABBTree.AABBTree ( )
inline

Constructs an empty (default-constructed) instance.

◆ AABBTree() [2/3]

unsafe MR.AABBTree.AABBTree ( MR._ByValue_AABBTree _other)
inline

Generated from constructor MR.AABBTree.AABBTree.

◆ AABBTree() [3/3]

unsafe MR.AABBTree.AABBTree ( MR.Const_MeshPart mp)
inline

creates tree for given mesh or its part Generated from constructor MR.AABBTree.AABBTree.

Member Function Documentation

◆ assign()

unsafe MR.AABBTree MR.AABBTree.assign ( MR._ByValue_AABBTree _other)
inline

Generated from method MR::AABBTree::operator=.

◆ getLeafOrderAndReset()

unsafe void MR.AABBTree.getLeafOrderAndReset ( MR.FaceBMap leafMap)
inline

fills map: LeafId -> leaf#, then resets leaf order to 0,1,2,...; buffer in leafMap must be resized before the call, and caller is responsible for filling missing leaf elements Generated from method MR.AABBTree.getLeafOrderAndReset.

◆ operator MR.AABBTreeBase_MRAABBTreeTraitsMRFaceTagMRBox3f()

unsafe implicit MR.AABBTree.operator MR.AABBTreeBase_MRAABBTreeTraitsMRFaceTagMRBox3f ( AABBTree self)
inlinestatic

◆ refit()

unsafe void MR.AABBTree.refit ( MR.Const_Mesh mesh,
MR.Const_VertBitSet changedVerts )
inline

updates bounding boxes of the nodes containing changed vertices; this is a faster alternative to full tree rebuild (but the tree after refit might be less efficient)

Parameters
meshsame mesh for which this tree was constructed but with updated coordinates;
changedVertsvertex ids with modified coordinates (since tree construction or last refit) Generated from method MR.AABBTree.refit.

The documentation for this class was generated from the following file: