True Axis Physics SDK 1.2.0.1 Beta Documentation
www.trueaxis.com

TA::CollisionObjectAABBMesh Class Reference

#include "TA/Physics/CollisionObjectAABBMesh.h"

Inheritance diagram for TA::CollisionObjectAABBMesh:

Inheritance graph

Detailed Description

An implementation of TA::CollisionObjectComplex.

Call the static function TA::CollisionObjectAABBMesh::CreateNew to create a new instance of this class.

This class provides a standard implementation of TA::CollisionObjectComplex using an Axis Aligned Bounding Box Tree. It has an O(log n) performance, and takes up O(n) space.

An TA::CollisionObjectAABBMesh can be added to the physics simulation using an TA::StaticObject.

Serialisation:
This class may be saved an loaded to file or memory using these functions inherited from TA::CollisionObject :

Reference Counting:
This class is reference counted. After the object is created it will have a reference count of one. AddRef() and Release() can be called to increment and decrement the reference count. If the reference count is zero after a call to Release() the object will be automatically deleted. Reference counted objects should only be created using new.
Examples:

SimplePhysicsSimulationExample.cpp.


Public Member Functions

void  Initialise (int nNumVertices, int nNumPolygons, int nNumPolygonIndices)
void  Finalise ()
virtual bool  Serialisable () const
void  Render ()
void  AddVertex (const Vec3 &v3Pos)
void  AddPolygon (int nNumVertices, const int *pnIndexList, u32 nAttribute=0x0)
void  FinishedAddingGeometry ()
const Data *  GetData () const
bool  TestLineForCollision (const Vec3 &v3Start, const Vec3 &v3Normal, float fLength, Collision &collision) const
void  CachedLocalPolygons (CollisionObjectCachedPolyData &cachedPolyData, const AABB &aabb, void *pDynamicObjectUserData) const
virtual const AABB &  GetAABB () const
Internal
void  Serialise (Serialiser &serialiser, const Version &version)

Static Public Member Functions

static CollisionObjectAABBMesh
*TAC_CALL  
CreateNew ()


© Copyright 2004-2006 TRUE AXIS PTY LTD Australia. All rights reserved.