|
|
Creates new empty BVH tree.
|
| | BVH_Tree () |
| | Sets node type to 'outer'.
|
| |
| void | SetOuter (const int theNodeIndex) |
| | Sets node type to 'outer'.
|
| |
| void | SetInner (const int theNodeIndex) |
| | Sets node type to 'inner'.
|
| |
| template<int K> |
| int | Child (const int theNodeIndex) const |
| | Returns index of the K-th child of the given inner node.
|
| |
| template<int K> |
| int & | ChangeChild (const int theNodeIndex) |
| | Returns index of the K-th child of the given inner node.
|
| |
| template<int K> |
| int & | Child (const int theNodeIndex) |
| | Returns index of the K-th child of the given inner node.
|
| |
|
Removes all nodes from the tree.
|
| void | Clear () |
| | Reserves internal BVH storage, so that it can contain the given number of BVH nodes.
|
| |
| void | Reserve (const int theNbNodes) |
| | Reserves internal BVH storage, so that it can contain the given number of BVH nodes.
|
| |
| int | AddLeafNode (const BVH_VecNt &theMinPoint, const BVH_VecNt &theMaxPoint, const int theBegElem, const int theEndElem) |
| | Adds new leaf node to the BVH.
|
| |
| int | AddInnerNode (const BVH_VecNt &theMinPoint, const BVH_VecNt &theMaxPoint, const int theLftChild, const int theRghChild) |
| | Adds new inner node to the BVH.
|
| |
| int | AddLeafNode (const BVH_Box< T, N > &theAABB, const int theBegElem, const int theEndElem) |
| | Adds new leaf node to the BVH.
|
| |
| int | AddInnerNode (const BVH_Box< T, N > &theAABB, const int theLftChild, const int theRghChild) |
| | Adds new inner node to the BVH.
|
| |
| int | AddLeafNode (const int theBegElem, const int theEndElem) |
| | Adds new leaf node to the BVH with UNINITIALIZED bounds.
|
| |
| int | AddInnerNode (const int theLftChild, const int theRghChild) |
| | Adds new inner node to the BVH with UNINITIALIZED bounds.
|
| |
|
Returns value of SAH (surface area heuristic). Allows to compare the quality of BVH trees constructed for the same sets of geometric objects with different methods.
|
| T | EstimateSAH () const |
| | Collapses the tree into QBVH an returns it. As a result, each 2-nd level of current tree is kept and the rest are discarded.
|
| |
| BVH_Tree< T, N, BVH_QuadTree > * | CollapseToQuadTree () const |
| | Collapses the tree into QBVH an returns it. As a result, each 2-nd level of current tree is kept and the rest are discarded.
|
| |
| | BVH_TreeBase () |
| | Releases resources of BVH tree.
|
| |
| virtual | ~BVH_TreeBase () |
| | Releases resources of BVH tree.
|
| |
| int | Depth () const |
| | Returns depth (height) of BVH tree.
|
| |
| int | Length () const |
| | Returns total number of BVH tree nodes.
|
| |
| BVH_VecNt & | MinPoint (const int theNodeIndex) |
| | Returns maximum point of the given node.
|
| |
| BVH_VecNt & | MaxPoint (const int theNodeIndex) |
| | Returns maximum point of the given node.
|
| |
| const BVH_VecNt & | MinPoint (const int theNodeIndex) const |
| | Returns minimum point of the given node.
|
| |
| const BVH_VecNt & | MaxPoint (const int theNodeIndex) const |
| | Returns maximum point of the given node.
|
| |
| int & | BegPrimitive (const int theNodeIndex) |
| | Returns index of first primitive of the given leaf node.
|
| |
| int & | EndPrimitive (const int theNodeIndex) |
| | Returns index of last primitive of the given leaf node.
|
| |
| int | BegPrimitive (const int theNodeIndex) const |
| | Returns index of first primitive of the given leaf node.
|
| |
| int | EndPrimitive (const int theNodeIndex) const |
| | Returns index of last primitive of the given leaf node.
|
| |
| int | NbPrimitives (const int theNodeIndex) const |
| | Returns number of primitives in the given leaf node.
|
| |
| int & | Level (const int theNodeIndex) |
| | Returns level (depth) of the given node.
|
| |
| int | Level (const int theNodeIndex) const |
| | Returns level (depth) of the given node.
|
| |
| bool | IsOuter (const int theNodeIndex) const |
| | Checks whether the given node is outer.
|
| |
| BVH_Array4i & | NodeInfoBuffer () |
| | Returns array of node data records.
|
| |
| const BVH_Array4i & | NodeInfoBuffer () const |
| | Returns array of node data records.
|
| |
| BVH::ArrayType< T, N >::Type & | MinPointBuffer () |
| | Returns array of node minimum points.
|
| |
| BVH::ArrayType< T, N >::Type & | MaxPointBuffer () |
| | Returns array of node maximum points.
|
| |
| const BVH::ArrayType< T, N >::Type & | MinPointBuffer () const |
| | Returns array of node minimum points.
|
| |
| const BVH::ArrayType< T, N >::Type & | MaxPointBuffer () const |
| | Returns array of node maximum points.
|
| |
| virtual void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const override |
| | Dumps the content of me into the stream.
|
| |
| virtual void | DumpNode (const int theNodeIndex, Standard_OStream &theOStream, Standard_Integer theDepth) const override |
| | Dumps the content of node into the stream.
|
| |
Public Member Functions inherited from Standard_Transient |
| | Standard_Transient () |
| | Empty constructor.
|
| |
| | Standard_Transient (const Standard_Transient &) |
| | Copy constructor – does nothing.
|
| |
| Standard_Transient & | operator= (const Standard_Transient &) |
| | Assignment operator, needed to avoid copying reference counter.
|
| |
| virtual | ~Standard_Transient () |
| | Destructor must be virtual.
|
| |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| | Returns a type descriptor about this object.
|
| |
| Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| | Returns a true value if this is an instance of Type.
|
| |
| Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
| | Returns a true value if this is an instance of TypeName.
|
| |
| Standard_Boolean | IsKind (const opencascade::handle< Standard_Type > &theType) const |
| | Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
|
| |
| Standard_Boolean | IsKind (const Standard_CString theTypeName) const |
| | Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
|
| |
| Standard_Transient * | This () const |
| | Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
|
| |
| Standard_Integer | GetRefCount () const noexcept |
| | Get the reference counter of this object.
|
| |
| void | IncrementRefCounter () noexcept |
| | Increments the reference counter of this object.
|
| |
| Standard_Integer | DecrementRefCounter () noexcept |
| | Decrements the reference counter of this object; returns the decremented value.
|
| |
| virtual void | Delete () const |
| | Memory deallocator for transient classes.
|
| |
template<class T, int N>
class BVH_Tree< T, N, BVH_BinaryTree >
Specialization of binary BVH tree.