#include <OPC_TreeBuilders.h>

Public Member Functions | |
| AABBTreeBuilder () | |
| Constructor. | |
| virtual bool | ComputeGlobalBox (const udword *primitives, udword nb_prims, AABB &global_box) const =0 |
| inline_ udword | GetCount () const |
| inline_ udword | GetNbInvalidSplits () const |
| virtual float | GetSplittingValue (udword index, udword axis) const =0 |
| virtual float | GetSplittingValue (const udword *primitives, udword nb_prims, const AABB &global_box, udword axis) const |
| inline_ void | IncreaseCount (udword nb) |
| inline_ void | IncreaseNbInvalidSplits () |
| inline_ void | SetCount (udword nb) |
| inline_ void | SetNbInvalidSplits (udword nb) |
| virtual BOOL | ValidateSubdivision (const udword *primitives, udword nb_prims, const AABB &global_box) |
| virtual | ~AABBTreeBuilder () |
| Destructor. | |
Public Attributes | |
| udword | mNbPrimitives |
| Total number of primitives. | |
| void * | mNodeBase |
| Address of node pool [Opcode 1.3]. | |
| BuildSettings | mSettings |
| Splitting rules & split limit [Opcode 1.3]. | |
Private Attributes | |
| udword | mCount |
| Stats: number of nodes created. | |
| udword | mNbInvalidSplits |
| Stats: number of invalid splits. | |
Definition at line 47 of file OPC_TreeBuilders.h.
| AABBTreeBuilder::AABBTreeBuilder | ( | ) | [inline] |
Constructor.
Definition at line 51 of file OPC_TreeBuilders.h.
| virtual AABBTreeBuilder::~AABBTreeBuilder | ( | ) | [inline, virtual] |
Destructor.
Definition at line 57 of file OPC_TreeBuilders.h.
| virtual bool AABBTreeBuilder::ComputeGlobalBox | ( | const udword * | primitives, |
| udword | nb_prims, | ||
| AABB & | global_box | ||
| ) | const [pure virtual] |
| inline_ udword AABBTreeBuilder::GetCount | ( | ) | const [inline] |
Definition at line 119 of file OPC_TreeBuilders.h.
| inline_ udword AABBTreeBuilder::GetNbInvalidSplits | ( | ) | const [inline] |
Definition at line 122 of file OPC_TreeBuilders.h.
| virtual float AABBTreeBuilder::GetSplittingValue | ( | udword | index, |
| udword | axis | ||
| ) | const [pure virtual] |
Computes the splitting value along a given axis for a given primitive.
| index | [in] index of the primitive to split |
| axis | [in] axis index (0,1,2) |
| virtual float AABBTreeBuilder::GetSplittingValue | ( | const udword * | primitives, |
| udword | nb_prims, | ||
| const AABB & | global_box, | ||
| udword | axis | ||
| ) | const [inline, virtual] |
Computes the splitting value along a given axis for a given node.
| primitives | [in] list of indices of primitives |
| nb_prims | [in] number of indices |
| global_box | [in] global AABB enclosing the set of input primitives |
| axis | [in] axis index (0,1,2) |
Definition at line 90 of file OPC_TreeBuilders.h.
| inline_ void AABBTreeBuilder::IncreaseCount | ( | udword | nb | ) | [inline] |
Definition at line 118 of file OPC_TreeBuilders.h.
| inline_ void AABBTreeBuilder::IncreaseNbInvalidSplits | ( | ) | [inline] |
Definition at line 121 of file OPC_TreeBuilders.h.
| inline_ void AABBTreeBuilder::SetCount | ( | udword | nb | ) | [inline] |
Definition at line 117 of file OPC_TreeBuilders.h.
| inline_ void AABBTreeBuilder::SetNbInvalidSplits | ( | udword | nb | ) | [inline] |
Definition at line 120 of file OPC_TreeBuilders.h.
| virtual BOOL AABBTreeBuilder::ValidateSubdivision | ( | const udword * | primitives, |
| udword | nb_prims, | ||
| const AABB & | global_box | ||
| ) | [inline, virtual] |
Validates node subdivision. This is called each time a node is considered for subdivision, during tree building.
| primitives | [in] list of indices of primitives |
| nb_prims | [in] number of indices |
| global_box | [in] global AABB enclosing the set of input primitives |
Definition at line 105 of file OPC_TreeBuilders.h.
udword AABBTreeBuilder::mCount [private] |
Stats: number of nodes created.
Definition at line 125 of file OPC_TreeBuilders.h.
udword AABBTreeBuilder::mNbInvalidSplits [private] |
Stats: number of invalid splits.
Definition at line 126 of file OPC_TreeBuilders.h.
Total number of primitives.
Definition at line 114 of file OPC_TreeBuilders.h.
Address of node pool [Opcode 1.3].
Definition at line 115 of file OPC_TreeBuilders.h.
Splitting rules & split limit [Opcode 1.3].
Definition at line 113 of file OPC_TreeBuilders.h.