Public Member Functions | Public Attributes | Private Attributes
AABBTreeBuilder Class Reference

#include <OPC_TreeBuilders.h>

Inheritance diagram for AABBTreeBuilder:
Inheritance graph
[legend]

List of all members.

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.
voidmNodeBase
 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.

Detailed Description

Definition at line 47 of file OPC_TreeBuilders.h.


Constructor & Destructor Documentation

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.


Member Function Documentation

virtual bool AABBTreeBuilder::ComputeGlobalBox ( const udword primitives,
udword  nb_prims,
AABB global_box 
) const [pure virtual]

Computes the AABB of a set of primitives.

Parameters:
primitives[in] list of indices of primitives
nb_prims[in] number of indices
global_box[out] global AABB enclosing the set of input primitives
Returns:
true if success

Definition at line 119 of file OPC_TreeBuilders.h.

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.

Parameters:
index[in] index of the primitive to split
axis[in] axis index (0,1,2)
Returns:
splitting value
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.

Parameters:
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)
Returns:
splitting value

Definition at line 90 of file OPC_TreeBuilders.h.

Definition at line 118 of file OPC_TreeBuilders.h.

Definition at line 121 of file OPC_TreeBuilders.h.

Definition at line 117 of file OPC_TreeBuilders.h.

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.

Parameters:
primitives[in] list of indices of primitives
nb_prims[in] number of indices
global_box[in] global AABB enclosing the set of input primitives
Returns:
TRUE if the node should be subdivised

Definition at line 105 of file OPC_TreeBuilders.h.


Member Data Documentation

Stats: number of nodes created.

Definition at line 125 of file OPC_TreeBuilders.h.

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.


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


openhrp3
Author(s): AIST, General Robotix Inc., Nakamura Lab of Dept. of Mechano Informatics at University of Tokyo
autogenerated on Thu Apr 11 2019 03:30:20