Open CASCADE Technology  7.0.0
Public Member Functions | Protected Member Functions
BVH_SweepPlaneBuilder< T, N > Class Template Reference

Performs building of BVH tree using sweep plane SAH algorithm. More...

#include <BVH_SweepPlaneBuilder.hxx>

Inheritance diagram for BVH_SweepPlaneBuilder< T, N >:
Inheritance graph
[legend]

Public Member Functions

 BVH_SweepPlaneBuilder (const Standard_Integer theLeafNodeSize=5, const Standard_Integer theMaxTreeDepth=32, const Standard_Integer theNumOfThreads=1)
 Creates sweep plane SAH BVH builder. More...
 
virtual ~BVH_SweepPlaneBuilder ()
 Releases resources of sweep plane SAH BVH builder. More...
 
- Public Member Functions inherited from BVH_QueueBuilder< T, N >
 BVH_QueueBuilder (const Standard_Integer theLeafNodeSize, const Standard_Integer theMaxTreeDepth, const Standard_Integer theNumOfThreads=1)
 Creates new BVH queue based builder. More...
 
virtual ~BVH_QueueBuilder ()=0
 Releases resources of BVH queue based builder. More...
 
virtual void Build (BVH_Set< T, N > *theSet, BVH_Tree< T, N > *theBVH, const BVH_Box< T, N > &theBox)
 Builds BVH using specific algorithm. More...
 
- Public Member Functions inherited from BVH_Builder< T, N >
 BVH_Builder (const Standard_Integer theLeafNodeSize, const Standard_Integer theMaxTreeDepth)
 Creates new abstract BVH builder. More...
 
virtual ~BVH_Builder ()
 Releases resources of BVH builder. More...
 

Protected Member Functions

BVH_QueueBuilder< T, N >::BVH_ChildNodes BuildNode (BVH_Set< T, N > *theSet, BVH_Tree< T, N > *theBVH, const Standard_Integer theNode)
 Performs splitting of the given BVH node. More...
 
- Protected Member Functions inherited from BVH_QueueBuilder< T, N >
virtual void AddChildren (BVH_Tree< T, N > *theBVH, const Standard_Integer theNode, const BVH_ChildNodes &theSubNodes)
 Processes child nodes of the splitted BVH node. More...
 
- Protected Member Functions inherited from BVH_Builder< T, N >
void UpdateDepth (BVH_Tree< T, N > *theBVH, const Standard_Integer theLevel)
 Updates depth of constructed BVH tree. More...
 

Additional Inherited Members

- Protected Attributes inherited from BVH_QueueBuilder< T, N >
BVH_BuildQueue myBuildQueue
 Queue to manage BVH node building tasks. More...
 
Standard_Integer myNumOfThreads
 Number of threads used to build BVH. More...
 
- Protected Attributes inherited from BVH_Builder< T, N >
Standard_Integer myMaxTreeDepth
 Maximum depth of constructed BVH. More...
 
Standard_Integer myLeafNodeSize
 Maximum number of objects per leaf. More...
 

Detailed Description

template<class T, int N>
class BVH_SweepPlaneBuilder< T, N >

Performs building of BVH tree using sweep plane SAH algorithm.

Constructor & Destructor Documentation

template<class T , int N>
BVH_SweepPlaneBuilder< T, N >::BVH_SweepPlaneBuilder ( const Standard_Integer  theLeafNodeSize = 5,
const Standard_Integer  theMaxTreeDepth = 32,
const Standard_Integer  theNumOfThreads = 1 
)

Creates sweep plane SAH BVH builder.

template<class T , int N>
virtual BVH_SweepPlaneBuilder< T, N >::~BVH_SweepPlaneBuilder ( )
virtual

Releases resources of sweep plane SAH BVH builder.

Member Function Documentation

template<class T , int N>
BVH_QueueBuilder<T, N>::BVH_ChildNodes BVH_SweepPlaneBuilder< T, N >::BuildNode ( BVH_Set< T, N > *  theSet,
BVH_Tree< T, N > *  theBVH,
const Standard_Integer  theNode 
)
protectedvirtual

Performs splitting of the given BVH node.

Implements BVH_QueueBuilder< T, N >.


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