doom3-gpl
Doom 3 GPL source release
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Member Functions | Private Attributes | Friends | List of all members
idAFBody Class Reference

#include <Physics_AF.h>

Classes

struct  bodyFlags_s
 

Public Member Functions

 idAFBody (void)
 
 idAFBody (const idStr &name, idClipModel *clipModel, float density)
 
 ~idAFBody (void)
 
void Init (void)
 
const idStrGetName (void) const
 
const idVec3GetWorldOrigin (void) const
 
const idMat3GetWorldAxis (void) const
 
const idVec3GetLinearVelocity (void) const
 
const idVec3GetAngularVelocity (void) const
 
idVec3 GetPointVelocity (const idVec3 &point) const
 
const idVec3GetCenterOfMass (void) const
 
void SetClipModel (idClipModel *clipModel)
 
idClipModelGetClipModel (void) const
 
void SetClipMask (const int mask)
 
int GetClipMask (void) const
 
void SetSelfCollision (const bool enable)
 
void SetWorldOrigin (const idVec3 &origin)
 
void SetWorldAxis (const idMat3 &axis)
 
void SetLinearVelocity (const idVec3 &linear) const
 
void SetAngularVelocity (const idVec3 &angular) const
 
void SetFriction (float linear, float angular, float contact)
 
float GetContactFriction (void) const
 
void SetBouncyness (float bounce)
 
float GetBouncyness (void) const
 
void SetDensity (float density, const idMat3 &inertiaScale=mat3_identity)
 
float GetInverseMass (void) const
 
idMat3 GetInverseWorldInertia (void) const
 
void SetFrictionDirection (const idVec3 &dir)
 
bool GetFrictionDirection (idVec3 &dir) const
 
void SetContactMotorDirection (const idVec3 &dir)
 
bool GetContactMotorDirection (idVec3 &dir) const
 
void SetContactMotorVelocity (float vel)
 
float GetContactMotorVelocity (void) const
 
void SetContactMotorForce (float force)
 
float GetContactMotorForce (void) const
 
void AddForce (const idVec3 &point, const idVec3 &force)
 
void InverseWorldSpatialInertiaMultiply (idVecX &dst, const float *v) const
 
idVec6GetResponseForce (int index)
 
void Save (idSaveGame *saveFile)
 
void Restore (idRestoreGame *saveFile)
 

Private Attributes

idStr name
 
idAFBodyparent
 
idList< idAFBody * > children
 
idClipModelclipModel
 
idAFConstraintprimaryConstraint
 
idList< idAFConstraint * > constraints
 
idAFTreetree
 
float linearFriction
 
float angularFriction
 
float contactFriction
 
float bouncyness
 
int clipMask
 
idVec3 frictionDir
 
idVec3 contactMotorDir
 
float contactMotorVelocity
 
float contactMotorForce
 
float mass
 
float invMass
 
idVec3 centerOfMass
 
idMat3 inertiaTensor
 
idMat3 inverseInertiaTensor
 
AFBodyPState_t state [2]
 
AFBodyPState_tcurrent
 
AFBodyPState_tnext
 
AFBodyPState_t saved
 
idVec3 atRestOrigin
 
idMat3 atRestAxis
 
idMatX inverseWorldSpatialInertia
 
idMatX I
 
idMatX invI
 
idMatX J
 
idVecX s
 
idVecX totalForce
 
idVecX auxForce
 
idVecX acceleration
 
floatresponse
 
intresponseIndex
 
int numResponses
 
int maxAuxiliaryIndex
 
int maxSubTreeAuxiliaryIndex
 
struct idAFBody::bodyFlags_s fl
 

Friends

class idPhysics_AF
 
class idAFTree
 

Detailed Description

Definition at line 657 of file Physics_AF.h.

Constructor & Destructor Documentation

idAFBody::idAFBody ( void  )

Definition at line 4137 of file Physics_AF.cpp.

idAFBody::idAFBody ( const idStr name,
idClipModel clipModel,
float  density 
)

Definition at line 4146 of file Physics_AF.cpp.

idAFBody::~idAFBody ( void  )

Definition at line 4170 of file Physics_AF.cpp.

Member Function Documentation

void idAFBody::AddForce ( const idVec3 point,
const idVec3 force 
)

Definition at line 4377 of file Physics_AF.cpp.

const idVec3& idAFBody::GetAngularVelocity ( void  ) const
inline

Definition at line 672 of file Physics_AF.h.

float idAFBody::GetBouncyness ( void  ) const
inline

Definition at line 687 of file Physics_AF.h.

const idVec3& idAFBody::GetCenterOfMass ( void  ) const
inline

Definition at line 674 of file Physics_AF.h.

int idAFBody::GetClipMask ( void  ) const
inline

Definition at line 678 of file Physics_AF.h.

idClipModel* idAFBody::GetClipModel ( void  ) const
inline

Definition at line 676 of file Physics_AF.h.

float idAFBody::GetContactFriction ( void  ) const
inline

Definition at line 685 of file Physics_AF.h.

bool idAFBody::GetContactMotorDirection ( idVec3 dir) const

Definition at line 4354 of file Physics_AF.cpp.

float idAFBody::GetContactMotorForce ( void  ) const
inline

Definition at line 700 of file Physics_AF.h.

float idAFBody::GetContactMotorVelocity ( void  ) const
inline

Definition at line 698 of file Physics_AF.h.

bool idAFBody::GetFrictionDirection ( idVec3 dir) const

Definition at line 4331 of file Physics_AF.cpp.

float idAFBody::GetInverseMass ( void  ) const
inline

Definition at line 689 of file Physics_AF.h.

idMat3 idAFBody::GetInverseWorldInertia ( void  ) const
inline

Definition at line 690 of file Physics_AF.h.

const idVec3& idAFBody::GetLinearVelocity ( void  ) const
inline

Definition at line 671 of file Physics_AF.h.

const idStr& idAFBody::GetName ( void  ) const
inline

Definition at line 668 of file Physics_AF.h.

idVec3 idAFBody::GetPointVelocity ( const idVec3 point) const

Definition at line 4367 of file Physics_AF.cpp.

idVec6& idAFBody::GetResponseForce ( int  index)
inline

Definition at line 704 of file Physics_AF.h.

const idMat3& idAFBody::GetWorldAxis ( void  ) const
inline

Definition at line 670 of file Physics_AF.h.

const idVec3& idAFBody::GetWorldOrigin ( void  ) const
inline

Definition at line 669 of file Physics_AF.h.

void idAFBody::Init ( void  )

Definition at line 4179 of file Physics_AF.cpp.

ID_INLINE void idAFBody::InverseWorldSpatialInertiaMultiply ( idVecX dst,
const float v 
) const

Definition at line 4389 of file Physics_AF.cpp.

void idAFBody::Restore ( idRestoreGame saveFile)

Definition at line 4441 of file Physics_AF.cpp.

void idAFBody::Save ( idSaveGame saveFile)

Definition at line 4411 of file Physics_AF.cpp.

void idAFBody::SetAngularVelocity ( const idVec3 angular) const
inline

Definition at line 683 of file Physics_AF.h.

void idAFBody::SetBouncyness ( float  bounce)

Definition at line 4265 of file Physics_AF.cpp.

void idAFBody::SetClipMask ( const int  mask)
inline

Definition at line 677 of file Physics_AF.h.

void idAFBody::SetClipModel ( idClipModel clipModel)

Definition at line 4236 of file Physics_AF.cpp.

void idAFBody::SetContactMotorDirection ( const idVec3 dir)

Definition at line 4344 of file Physics_AF.cpp.

void idAFBody::SetContactMotorForce ( float  force)
inline

Definition at line 699 of file Physics_AF.h.

void idAFBody::SetContactMotorVelocity ( float  vel)
inline

Definition at line 697 of file Physics_AF.h.

void idAFBody::SetDensity ( float  density,
const idMat3 inertiaScale = mat3_identity 
)

Definition at line 4278 of file Physics_AF.cpp.

void idAFBody::SetFriction ( float  linear,
float  angular,
float  contact 
)

Definition at line 4248 of file Physics_AF.cpp.

void idAFBody::SetFrictionDirection ( const idVec3 dir)

Definition at line 4321 of file Physics_AF.cpp.

void idAFBody::SetLinearVelocity ( const idVec3 linear) const
inline

Definition at line 682 of file Physics_AF.h.

void idAFBody::SetSelfCollision ( const bool  enable)
inline

Definition at line 679 of file Physics_AF.h.

void idAFBody::SetWorldAxis ( const idMat3 axis)
inline

Definition at line 681 of file Physics_AF.h.

void idAFBody::SetWorldOrigin ( const idVec3 origin)
inline

Definition at line 680 of file Physics_AF.h.

Friends And Related Function Documentation

friend class idAFTree
friend

Definition at line 660 of file Physics_AF.h.

friend class idPhysics_AF
friend

Definition at line 659 of file Physics_AF.h.

Member Data Documentation

idVecX idAFBody::acceleration
private

Definition at line 750 of file Physics_AF.h.

float idAFBody::angularFriction
private

Definition at line 719 of file Physics_AF.h.

idMat3 idAFBody::atRestAxis
private

Definition at line 741 of file Physics_AF.h.

idVec3 idAFBody::atRestOrigin
private

Definition at line 740 of file Physics_AF.h.

idVecX idAFBody::auxForce
private

Definition at line 749 of file Physics_AF.h.

float idAFBody::bouncyness
private

Definition at line 721 of file Physics_AF.h.

idVec3 idAFBody::centerOfMass
private

Definition at line 731 of file Physics_AF.h.

idList<idAFBody *> idAFBody::children
private

Definition at line 713 of file Physics_AF.h.

int idAFBody::clipMask
private

Definition at line 722 of file Physics_AF.h.

idClipModel* idAFBody::clipModel
private

Definition at line 714 of file Physics_AF.h.

idList<idAFConstraint *> idAFBody::constraints
private

Definition at line 716 of file Physics_AF.h.

float idAFBody::contactFriction
private

Definition at line 720 of file Physics_AF.h.

idVec3 idAFBody::contactMotorDir
private

Definition at line 724 of file Physics_AF.h.

float idAFBody::contactMotorForce
private

Definition at line 726 of file Physics_AF.h.

float idAFBody::contactMotorVelocity
private

Definition at line 725 of file Physics_AF.h.

AFBodyPState_t* idAFBody::current
private

Definition at line 737 of file Physics_AF.h.

struct idAFBody::bodyFlags_s idAFBody::fl
private
idVec3 idAFBody::frictionDir
private

Definition at line 723 of file Physics_AF.h.

idMatX idAFBody::I
private

Definition at line 745 of file Physics_AF.h.

idMat3 idAFBody::inertiaTensor
private

Definition at line 732 of file Physics_AF.h.

idMat3 idAFBody::inverseInertiaTensor
private

Definition at line 733 of file Physics_AF.h.

idMatX idAFBody::inverseWorldSpatialInertia
private

Definition at line 744 of file Physics_AF.h.

idMatX idAFBody::invI
private

Definition at line 745 of file Physics_AF.h.

float idAFBody::invMass
private

Definition at line 730 of file Physics_AF.h.

idMatX idAFBody::J
private

Definition at line 746 of file Physics_AF.h.

float idAFBody::linearFriction
private

Definition at line 718 of file Physics_AF.h.

float idAFBody::mass
private

Definition at line 729 of file Physics_AF.h.

int idAFBody::maxAuxiliaryIndex
private

Definition at line 754 of file Physics_AF.h.

int idAFBody::maxSubTreeAuxiliaryIndex
private

Definition at line 755 of file Physics_AF.h.

idStr idAFBody::name
private

Definition at line 711 of file Physics_AF.h.

AFBodyPState_t* idAFBody::next
private

Definition at line 738 of file Physics_AF.h.

int idAFBody::numResponses
private

Definition at line 753 of file Physics_AF.h.

idAFBody* idAFBody::parent
private

Definition at line 712 of file Physics_AF.h.

idAFConstraint* idAFBody::primaryConstraint
private

Definition at line 715 of file Physics_AF.h.

float* idAFBody::response
private

Definition at line 751 of file Physics_AF.h.

int* idAFBody::responseIndex
private

Definition at line 752 of file Physics_AF.h.

idVecX idAFBody::s
private

Definition at line 747 of file Physics_AF.h.

AFBodyPState_t idAFBody::saved
private

Definition at line 739 of file Physics_AF.h.

AFBodyPState_t idAFBody::state[2]
private

Definition at line 736 of file Physics_AF.h.

idVecX idAFBody::totalForce
private

Definition at line 748 of file Physics_AF.h.

idAFTree* idAFBody::tree
private

Definition at line 717 of file Physics_AF.h.


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