Public Member Functions | Protected Member Functions | Protected Attributes
Opcode::AABBTreeNode Class Reference

#include <Opcode.h>

Inheritance diagram for Opcode::AABBTreeNode:
Inheritance graph
[legend]

List of all members.

Public Member Functions

inline_ udword GetNbPrimitives () const
inline_ const udwordGetPrimitives () const

Protected Member Functions

void _BuildHierarchy (AABBTreeBuilder *builder)
void _Refit (AABBTreeBuilder *builder)
udword Split (udword axis, AABBTreeBuilder *builder)
bool Subdivide (AABBTreeBuilder *builder)

Protected Attributes

udword mNbPrimitives
 Number of primitives for this node.
udwordmNodePrimitives
 Node-related primitives (shortcut to a position in mIndices below)

Detailed Description

Definition at line 84 of file Opcode.h.


Member Function Documentation

Recursive hierarchy building in a top-down fashion.

Parameters:
builder[in] the tree builder

Definition at line 333 of file OPC_AABBTree.cpp.

void AABBTreeNode::_Refit ( AABBTreeBuilder builder) [protected]

Refits the tree (top-down).

Parameters:
builder[in] the tree builder

Definition at line 354 of file OPC_AABBTree.cpp.

Definition at line 90 of file Opcode.h.

Definition at line 89 of file Opcode.h.

udword AABBTreeNode::Split ( udword  axis,
AABBTreeBuilder builder 
) [protected]

Splits the node along a given axis. The list of indices is reorganized according to the split values.

Parameters:
axis[in] splitting axis index
builder[in] the tree builder
Returns:
the number of primitives assigned to the first child
Warning:
this method reorganizes the internal list of primitives

Definition at line 99 of file OPC_AABBTree.cpp.

bool AABBTreeNode::Subdivide ( AABBTreeBuilder builder) [protected]

Subdivides the node.

N / \ / \ N/2 N/2 / \ / \ N/4 N/4 N/4 N/4 (etc)

A well-balanced tree should have a O(log n) depth. A degenerate tree would have a O(n) depth. Note a perfectly-balanced tree is not well-suited to collision detection anyway.

Parameters:
builder[in] the tree builder
Returns:
true if success

Definition at line 150 of file OPC_AABBTree.cpp.


Member Data Documentation

Number of primitives for this node.

Definition at line 95 of file Opcode.h.

Node-related primitives (shortcut to a position in mIndices below)

Definition at line 94 of file Opcode.h.


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


openhrp3
Author(s): AIST, General Robotix Inc., Nakamura Lab of Dept. of Mechano Informatics at University of Tokyo
autogenerated on Sun Apr 2 2017 03:44:02