Bullet Collision Detection & Physics Library: GIM_BOX_TREE Class Reference

Bullet Collision Detection & Physics Library

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
GIM_BOX_TREE Class Reference

Basic Box tree structure. More...

`#include <gim_box_set.h>`

Collaboration diagram for GIM_BOX_TREE:
[legend]

## Public Member Functions
| GIM_BOX_TREE ()
void | build_tree (gim_array< GIM_AABB_DATA > &primitive_boxes)
| prototype functions for box tree management
void | clearNodes ()
GUINT | getNodeCount () const
| node count
bool | isLeafNode (GUINT nodeindex) const
| tells if the node is a leaf
GUINT | getNodeData (GUINT nodeindex) const
void | getNodeBound (GUINT nodeindex, GIM_AABB &bound) const
void | setNodeBound (GUINT nodeindex, const GIM_AABB &bound)
GUINT | getLeftNodeIndex (GUINT nodeindex) const
GUINT | getRightNodeIndex (GUINT nodeindex) const
GUINT | getScapeNodeIndex (GUINT nodeindex) const

## Protected Member Functions
GUINT | _sort_and_calc_splitting_index (gim_array< GIM_AABB_DATA > &primitive_boxes, GUINT startIndex, GUINT endIndex, GUINT splitAxis)
GUINT | _calc_splitting_axis (gim_array< GIM_AABB_DATA > &primitive_boxes, GUINT startIndex, GUINT endIndex)
void | _build_sub_tree (gim_array< GIM_AABB_DATA > &primitive_boxes, GUINT startIndex, GUINT endIndex)

## Protected Attributes
GUINT | m_num_nodes
gim_array< GIM_BOX_TREE_NODE > | m_node_array

## Detailed Description

Basic Box tree structure.

Definition at line 107 of file gim_box_set.h.

## Constructor & Destructor Documentation

## ◆ GIM_BOX_TREE()

GIM_BOX_TREE::GIM_BOX_TREE | ( |  | ) |
| inline

Definition at line 123 of file gim_box_set.h.

## Member Function Documentation

## ◆ _build_sub_tree()

void GIM_BOX_TREE::_build_sub_tree | ( | gim_array< GIM_AABB_DATA > & | primitive_boxes,
|  | GUINT | startIndex,
|  | GUINT | endIndex )
| protected

Definition at line 115 of file gim_box_set.cpp.

## ◆ _calc_splitting_axis()

GUINT GIM_BOX_TREE::_calc_splitting_axis | ( | gim_array< GIM_AABB_DATA > & | primitive_boxes,
|  | GUINT | startIndex,
|  | GUINT | endIndex )
| protected

Definition at line 33 of file gim_box_set.cpp.

## ◆ _sort_and_calc_splitting_index()

GUINT GIM_BOX_TREE::_sort_and_calc_splitting_index | ( | gim_array< GIM_AABB_DATA > & | primitive_boxes,
|  | GUINT | startIndex,
|  | GUINT | endIndex,
|  | GUINT | splitAxis )
| protected

Definition at line 63 of file gim_box_set.cpp.

## ◆ build_tree()

void GIM_BOX_TREE::build_tree | ( | gim_array< GIM_AABB_DATA > & | primitive_boxes | ) |

prototype functions for box tree management

stackless build tree

Definition at line 167 of file gim_box_set.cpp.

## ◆ clearNodes()

void GIM_BOX_TREE::clearNodes | ( |  | ) |
| inline

Definition at line 132 of file gim_box_set.h.

## ◆ getLeftNodeIndex()

GUINT GIM_BOX_TREE::getLeftNodeIndex | ( | GUINT | nodeindex | ) | const
| inline

Definition at line 165 of file gim_box_set.h.

## ◆ getNodeBound()

void GIM_BOX_TREE::getNodeBound | ( | GUINT | nodeindex,
|  | GIM_AABB & | bound ) const
| inline

Definition at line 155 of file gim_box_set.h.

## ◆ getNodeCount()

GUINT GIM_BOX_TREE::getNodeCount | ( |  | ) | const
| inline

node count

Definition at line 139 of file gim_box_set.h.

## ◆ getNodeData()

GUINT GIM_BOX_TREE::getNodeData | ( | GUINT | nodeindex | ) | const
| inline

Definition at line 150 of file gim_box_set.h.

## ◆ getRightNodeIndex()

GUINT GIM_BOX_TREE::getRightNodeIndex | ( | GUINT | nodeindex | ) | const
| inline

Definition at line 170 of file gim_box_set.h.

## ◆ getScapeNodeIndex()

GUINT GIM_BOX_TREE::getScapeNodeIndex | ( | GUINT | nodeindex | ) | const
| inline

Definition at line 175 of file gim_box_set.h.

## ◆ isLeafNode()

bool GIM_BOX_TREE::isLeafNode | ( | GUINT | nodeindex | ) | const
| inline

tells if the node is a leaf

Definition at line 145 of file gim_box_set.h.

## ◆ setNodeBound()

void GIM_BOX_TREE::setNodeBound | ( | GUINT | nodeindex,
|  | const GIM_AABB & | bound )
| inline

Definition at line 160 of file gim_box_set.h.

## Member Data Documentation

## ◆ m_node_array

gim_array<GIM_BOX_TREE_NODE> GIM_BOX_TREE::m_node_array
| protected

Definition at line 111 of file gim_box_set.h.

## ◆ m_num_nodes

GUINT GIM_BOX_TREE::m_num_nodes
| protected

Definition at line 110 of file gim_box_set.h.

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

- gim_box_set.h
- gim_box_set.cpp