bounding volume hierarchy for line segments Generated from class MR::AABBTreePolyline3. Base classes: Direct: (non-virtual) MR::AABBTreeBase<MR::AABBTreeTraits<MR::UndirectedEdgeTag, MR::Box3f>>
Generated from class MR::AABBTreePolyline3. Heap-allocated instances are held in Owned<AABBTreePolyline3>.
| auto meshlib::AABBTreePolyline3::assign_from_another | ( | _other:meshlib::Owned< meshlib::AABBTreePolyline3 > | ) | -> &mut meshlib::AABBTreePolyline3 |
Generated from method MR::AABBTreePolyline3::operator=.
Calls MR_AABBTreePolyline3_AssignFromAnother(). The reference to things referred to by the parameter _other (if any) might be preserved in this object. The reference to this object might be preserved in the return value.
|
static |
creates tree for given polyline Generated from constructor MR::AABBTreePolyline3::AABBTreePolyline3.
Calls MR_AABBTreePolyline3_Construct_1(). The reference to the parameter polyline might be preserved in the constructed object.
|
static |
creates tree for selected edges on the mesh (only for 3d tree) Generated from constructor MR::AABBTreePolyline3::AABBTreePolyline3.
Calls MR_AABBTreePolyline3_Construct_2(). The reference to the parameter mesh might be preserved in the constructed object. The reference to the parameter edgeSet might be preserved in the constructed object.
|
static |
Generated from constructor MR::AABBTreePolyline3::AABBTreePolyline3.
Calls MR_AABBTreePolyline3_ConstructFromAnother(). The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object.
| auto meshlib::AABBTreePolyline3::empty | ( | ) | const -> bool |
returns true if the tree has no leaves Generated from method MR::AABBTreePolyline3::empty.
Calls MR_AABBTreePolyline3_empty().
| auto meshlib::AABBTreePolyline3::get_bounding_box | ( | ) | const -> meshlib::Box3f |
returns the root node bounding box Generated from method MR::AABBTreePolyline3::getBoundingBox.
Calls MR_AABBTreePolyline3_getBoundingBox().
| void meshlib::AABBTreePolyline3::get_leaf_order | ( | leafMap:&mut meshlib::UndirectedEdgeBMap | ) | const |
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::AABBTreePolyline3::getLeafOrder.
Calls MR_AABBTreePolyline3_getLeafOrder().
| void meshlib::AABBTreePolyline3::get_leaf_order_and_reset | ( | leafMap:&mut meshlib::UndirectedEdgeBMap | ) |
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::AABBTreePolyline3::getLeafOrderAndReset.
Calls MR_AABBTreePolyline3_getLeafOrderAndReset().
| auto meshlib::AABBTreePolyline3::get_nodes_from_leaves | ( | leaves:&meshlib::UndirectedEdgeBitSet | ) | const -> meshlib::Owned< meshlib::NodeBitSet > |
returns set of not-leaf nodes containing among direct or indirect children given leaves Generated from method MR::AABBTreePolyline3::getNodesFromLeaves.
Calls MR_AABBTreePolyline3_getNodesFromLeaves().
| auto meshlib::AABBTreePolyline3::get_subtree_leaves | ( | subtreeRoot:meshlib::NodeId | ) | const -> meshlib::Owned< meshlib::UndirectedEdgeBitSet > |
returns all leaves in the subtree with given root (can be a leaf) Generated from method MR::AABBTreePolyline3::getSubtreeLeaves.
Calls MR_AABBTreePolyline3_getSubtreeLeaves().
| auto meshlib::AABBTreePolyline3::get_subtrees | ( | minNum:core::ffi::c_int | ) | const -> meshlib::Owned< meshlib::std_vector_MR_NodeId > |
returns at least given number of top-level not-intersecting subtrees (some can be leaves), union of which contain all tree leaves Generated from method MR::AABBTreePolyline3::getSubtrees.
Calls MR_AABBTreePolyline3_getSubtrees().
| auto meshlib::AABBTreePolyline3::heap_bytes | ( | ) | const -> usize |
returns the amount of memory this object occupies on heap Generated from method MR::AABBTreePolyline3::heapBytes.
Calls MR_AABBTreePolyline3_heapBytes().
| auto meshlib::AABBTreePolyline3::index | ( | nid:meshlib::NodeId | ) | const -> &meshlib::AABBTreeNode_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f |
const-access to any not-leaf node Generated from method MR::AABBTreePolyline3::operator[].
Calls MR_AABBTreePolyline3_index().
|
static |
returns true if given node id is in fact a leaf (encoded as negative number) Generated from method MR::AABBTreePolyline3::isLeaf.
Calls MR_AABBTreePolyline3_isLeaf().
| auto meshlib::AABBTreePolyline3::leaf | ( | n:meshlib::NodeId | ) | const -> &meshlib::BoxedLeaf_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f |
returns the leaf encoded in given node id Generated from method MR::AABBTreePolyline3::leaf.
Calls MR_AABBTreePolyline3_leaf().
| auto meshlib::AABBTreePolyline3::leaf_id | ( | n:meshlib::NodeId | ) | const -> meshlib::UndirectedEdgeId |
returns the id of the leaf encoded in given node id Generated from method MR::AABBTreePolyline3::leafId.
Calls MR_AABBTreePolyline3_leafId().
| auto meshlib::AABBTreePolyline3::leaves | ( | ) | const -> &meshlib::Vector_MR_BoxedLeaf_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f |
all leaves in the order of the tree right after its construction Generated from method MR::AABBTreePolyline3::leaves.
Calls MR_AABBTreePolyline3_leaves().
|
static |
Constructs an empty (default-constructed) instance.
Calls MR_AABBTreePolyline3_DefaultConstruct().
| auto meshlib::AABBTreePolyline3::nodes | ( | ) | const -> &meshlib::Vector_MR_AABBTreeNode_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f_MR_NodeId |
const-access to all not-leaf nodes, a tree with N leaves has N-1 nodes Generated from method MR::AABBTreePolyline3::nodes.
Calls MR_AABBTreePolyline3_nodes().
| auto meshlib::AABBTreePolyline3::num_leaves | ( | ) | const -> usize |
returns the number of leaves in whole tree Generated from method MR::AABBTreePolyline3::numLeaves.
Calls MR_AABBTreePolyline3_numLeaves().
|
static |
returns the bounding box of given node or leaf Generated from method MR::AABBTreePolyline3::box.
Calls MR_AABBTreePolyline3_box().
| auto meshlib::AABBTreePolyline3::root_node_id | ( | ) | const -> meshlib::NodeId |
returns root node id: 0 if the tree has at least two leaves, or the only leaf; must not be called for empty tree Generated from method MR::AABBTreePolyline3::rootNodeId.
Calls MR_AABBTreePolyline3_rootNodeId().
|
static |
Static downcast from the base class MR::AABBTreeBase<MR::AABBTreeTraits<MR::UndirectedEdgeTag, MR::Box3f>>.
Calls MR_AABBTreePolyline3_StaticDowncastFrom_MR_AABBTreeBase_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f(). Undefined behavior if the object isn't actually a AABBTreePolyline3.
|
static |
Static downcast from the base class MR::AABBTreeBase<MR::AABBTreeTraits<MR::UndirectedEdgeTag, MR::Box3f>>.
Calls MR_AABBTreePolyline3_MutableStaticDowncastFrom_MR_AABBTreeBase_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f(). Undefined behavior if the object isn't actually a AABBTreePolyline3.
| auto meshlib::AABBTreePolyline3::upcast_to_aabb_tree_base_mr_aabb_tree_traits_mr_undirected_edge_tag_mr_box3f | ( | ) | const -> &meshlib::AABBTreeBase_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f |
Upcasts to the base class MR::AABBTreeBase<MR::AABBTreeTraits<MR::UndirectedEdgeTag, MR::Box3f>>.
Calls MR_AABBTreePolyline3_UpcastTo_MR_AABBTreeBase_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f().
| auto meshlib::AABBTreePolyline3::upcast_to_aabb_tree_base_mr_aabb_tree_traits_mr_undirected_edge_tag_mr_box3f_mut | ( | ) | -> &mut meshlib::AABBTreeBase_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f |
Upcasts to the base class MR::AABBTreeBase<MR::AABBTreeTraits<MR::UndirectedEdgeTag, MR::Box3f>>.
Calls MR_AABBTreePolyline3_MutableUpcastTo_MR_AABBTreeBase_MR_AABBTreeTraits_MR_UndirectedEdgeTag_MR_Box3f().