#include "TA/Physics/CollisionObjectLineList.h"
Inheritance diagram for TA::CollisionObjectLineList:
Call the static function TA::CollisionObjectLineList::CreateNew to create a new instance of this class.
A CollisionObjectLineList represents a list of line segments. It provides a faster alternative to TA::Physics::TestLineForCollision in the case where a there are a group of short lines that are attached to a dynamic object. This object type was added specifically to represent ground contact points for car wheels in TA::DynamicObjectCar but may be also useful in other situations so has been made available to the end user.
Information about collisions that occurred during the last call to the function TA::Physics::Update can be retrieved using the functions TA::DynamicObject::GetNumLineCollisions() and TA::DynamicObject::GetLineCollision(). Collisions with CollisionObjectLineList have no effect on the physics response of a TA::DynamicObject.
Objects that implement TA::CollisionObjectSimple can be combined to make a combo collision object. See TA::CollisionObjectCombo::AddCollisionObject. Unlike other objects that inherit from TA::CollisionObjectSimple, a TA::CollisionObjectCombo is only allowed to contain one CollisionObjectLineList.
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.
Public Member Functions | |
void | Initialise (const Vec3 *v3PointList, int nNumLines) |
void | Finalise () |
bool | Serialisable () const |
AABB | CalculateBoundingBox () const |
void | CalculateMass (float fDensity, float &fMass, Vec3 &v3CenterOfMass, Mat33 &m33Inertia) const |
virtual void | Render (const MFrame &mFrame) |
virtual bool | TestLineForCollision (const Vec3 &v3Start, const Vec3 &v3Normal, float fLength, Collision &collision) const |
int | GetNumLines () const |
Internal | |
void | Serialise (Serialiser &serialiser, const Version &version) |
Static Public Member Functions | |
static CollisionObjectLineList *TAC_CALL | CreateNew () |