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 idStr & GetName (void) const
 
const idVec3 & GetWorldOrigin (void) const
 
const idMat3 & GetWorldAxis (void) const
 
const idVec3 & GetLinearVelocity (void) const
 
const idVec3 & GetAngularVelocity (void) const
 
idVec3 GetPointVelocity (const idVec3 &point) const
 
const idVec3 & GetCenterOfMass (void) const
 
void SetClipModel (idClipModel *clipModel)
 
idClipModel * GetClipModel (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
 
idVec6 & GetResponseForce (int index)
 
void Save (idSaveGame *saveFile)
 
void Restore (idRestoreGame *saveFile)
 

Private Attributes

idStr name
 
idAFBody * parent
 
idList< idAFBody * > children
 
idClipModel * clipModel
 
idAFConstraint * primaryConstraint
 
idList< idAFConstraint * > constraints
 
idAFTree * tree
 
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_t * current
 
AFBodyPState_t * next
 
AFBodyPState_t saved
 
idVec3 atRestOrigin
 
idMat3 atRestAxis
 
idMatX inverseWorldSpatialInertia
 
idMatX I
 
idMatX invI
 
idMatX J
 
idVecX s
 
idVecX totalForce
 
idVecX auxForce
 
idVecX acceleration
 
float * response
 
int * responseIndex
 
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: