#include <OPC_BaseModel.h>

Public Member Functions | |
| BaseModel () | |
| virtual bool | Build (const OPCODECREATE &create)=0 |
| inline_ const MeshInterface * | GetMeshInterface () const |
| inline_ udword | GetModelCode () const |
| inline_ udword | GetNbNodes () const |
| inline_ const AABBTree * | GetSourceTree () const |
| inline_ const AABBOptimizedTree * | GetTree () const |
| inline_ AABBOptimizedTree * | GetTree () |
| virtual udword | GetUsedBytes () const =0 |
| inline_ BOOL | HasLeafNodes () const |
| inline_ BOOL | HasSingleNode () const |
| inline_ BOOL | IsQuantized () const |
| virtual bool | Refit () |
| inline_ void | SetMeshInterface (const MeshInterface *imesh) |
| virtual | ~BaseModel () |
Protected Member Functions | |
| bool | CreateTree (bool no_leaf, bool quantized) |
| void | ReleaseBase () |
Protected Attributes | |
| const MeshInterface * | mIMesh |
| User-defined mesh interface. | |
| udword | mModelCode |
| Model code = combination of ModelFlag(s) | |
| AABBTree * | mSource |
| Original source tree. | |
| AABBOptimizedTree * | mTree |
| Optimized tree owned by the model. | |
The base class for collision models.
Definition at line 50 of file OPC_BaseModel.h.
| virtual BaseModel::~BaseModel | ( | ) | [virtual] |
| virtual bool BaseModel::Build | ( | const OPCODECREATE & | create | ) | [pure virtual] |
Builds a collision model.
| create | [in] model creation structure |
| bool BaseModel::CreateTree | ( | bool | no_leaf, |
| bool | quantized | ||
| ) | [protected] |
| inline_ const MeshInterface* BaseModel::GetMeshInterface | ( | ) | const [inline] |
| inline_ udword BaseModel::GetModelCode | ( | ) | const [inline] |
| inline_ udword BaseModel::GetNbNodes | ( | ) | const [inline] |
Gets the number of nodes in the tree. Should be 2*N-1 for normal trees and N-1 for optimized ones.
Definition at line 115 of file OPC_BaseModel.h.
| inline_ const AABBTree* BaseModel::GetSourceTree | ( | ) | const [inline] |
| inline_ const AABBOptimizedTree* BaseModel::GetTree | ( | ) | const [inline] |
| inline_ AABBOptimizedTree* BaseModel::GetTree | ( | ) | [inline] |
| virtual udword BaseModel::GetUsedBytes | ( | ) | const [pure virtual] |
Gets the number of bytes used by the tree.
| inline_ BOOL BaseModel::HasLeafNodes | ( | ) | const [inline] |
Checks whether the tree has leaf nodes or not.
Definition at line 123 of file OPC_BaseModel.h.
| inline_ BOOL BaseModel::HasSingleNode | ( | ) | const [inline] |
Checks whether the model has a single node or not. This special case must be handled separately.
Definition at line 139 of file OPC_BaseModel.h.
| inline_ BOOL BaseModel::IsQuantized | ( | ) | const [inline] |
Checks whether the tree is quantized or not.
Definition at line 131 of file OPC_BaseModel.h.
| virtual bool BaseModel::Refit | ( | ) | [virtual] |
Refits the collision model. This can be used to handle dynamic meshes. Usage is: 1. modify your mesh vertices (keep the topology constant!) 2. refit the tree (call this method)
| void BaseModel::ReleaseBase | ( | ) | [protected] |
| inline_ void BaseModel::SetMeshInterface | ( | const MeshInterface * | imesh | ) | [inline] |
Sets the mesh interface.
| imesh | [in] mesh interface |
Definition at line 163 of file OPC_BaseModel.h.
const MeshInterface* BaseModel::mIMesh [protected] |
User-defined mesh interface.
Definition at line 166 of file OPC_BaseModel.h.
udword BaseModel::mModelCode [protected] |
Model code = combination of ModelFlag(s)
Definition at line 167 of file OPC_BaseModel.h.
AABBTree* BaseModel::mSource [protected] |
Original source tree.
Definition at line 168 of file OPC_BaseModel.h.
AABBOptimizedTree* BaseModel::mTree [protected] |
Optimized tree owned by the model.
Definition at line 169 of file OPC_BaseModel.h.