7 #include "BlConstraintRelaxation.h"
32 btTypedConstraint *m_btJoint;
33 btAnimatGeneric6DofConstraint *m_bt6DofJoint;
35 float m_fltPrevBtJointPos;
36 float m_fltPrevJointPos;
41 btRigidBody *m_btParent;
42 btRigidBody *m_btChild;
47 btVector3 m_vLowerLinear;
48 btVector3 m_vUpperLinear;
49 btVector3 m_vLowerAngular;
50 btVector3 m_vUpperAngular;
54 virtual void CalculateRelativeJointMatrices(btTransform &mtJointRelToParent, btTransform &mtJointRelToChild);
55 virtual void CalculateRelativeJointMatrices(CStdFPoint vAdditionalRot, btTransform &mtJointRelToParent, btTransform &mtJointRelToChild);
56 virtual void InitBaseJointPointers(RigidBody *lpParent, RigidBody *lpChild, ConstraintRelaxation **aryRelaxations,
int iDisallowSpringIndex);
58 virtual float GetCurrentBtPositionScaled();
64 virtual BlRigidBody *GetBlParent() {
return m_lpBlParent;};
65 virtual BlRigidBody *GetBlChild() {
return m_lpBlChild;};
67 virtual btRigidBody *GetBtParent() {
return m_btParent;};
68 virtual btRigidBody *GetBtChild() {
return m_btChild;};
70 virtual void DeletePhysics(
bool bIncludeChildren);
72 virtual bool Physics_IsDefined();
73 virtual void Physics_ResetSimulation();
74 virtual void Physics_CollectData();
75 virtual void SetConstraintFriction() {};
76 virtual void AxisConstraintSpringEnableChanged(
bool bEnabled) {};
78 virtual float GetCurrentBtPosition() {
return 0;};
80 virtual void GetLimitsFromRelaxations(btVector3 &vLowerLinear, btVector3 &UpperLinear, btVector3 &vLowerAngular, btVector3 &vUpperAngular);
81 virtual void SetLimitValues();
83 virtual btTypedConstraint* Constraint() {
return m_btJoint;};
A common class for all joint data specific to vortex.
A common class for all rigid body data specific to vortex.
Classes for implementing the cm-labs vortex physics engine for AnimatLab.