Back to index

supertuxkart  0.5+dfsg1
Public Member Functions | Private Member Functions | Private Attributes
btOdeQuickstepConstraintSolver Class Reference

btOdeQuickstepConstraintSolver is one of the available solvers for Bullet dynamics framework It uses an adapted version quickstep solver from the Open Dynamics Engine project More...

#include <btOdeQuickstepConstraintSolver.h>

Inheritance diagram for btOdeQuickstepConstraintSolver:
Inheritance graph
[legend]
Collaboration diagram for btOdeQuickstepConstraintSolver:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 btOdeQuickstepConstraintSolver ()
virtual ~btOdeQuickstepConstraintSolver ()
virtual btScalar solveGroup (btCollisionObject **bodies, int numBodies, btPersistentManifold **manifold, int numManifolds, btTypedConstraint **constraints, int numConstraints, const btContactSolverInfo &info, btIDebugDraw *debugDrawer, btStackAlloc *stackAlloc, btDispatcher *dispatcher)
 solve a group of constraints
void setConstraintForceMixing (float cfm)
 setConstraintForceMixing, the cfm adds some positive value to the main diagonal This can improve convergence (make matrix positive semidefinite), but it can make the simulation look more 'springy'
void setErrorReductionParamter (float erp)
 setErrorReductionParamter sets the maximum amount of error reduction which limits energy addition during penetration depth recovery
void reset ()
 clear internal cached data and reset random seed
void setRandSeed (unsigned long seed)
unsigned long getRandSeed () const
virtual void prepareSolve (int numBodies, int numManifolds)
virtual void allSolved (const btContactSolverInfo &info, class btIDebugDraw *debugDrawer, btStackAlloc *stackAlloc)

Private Member Functions

int ConvertBody (btRigidBody *body, btAlignedObjectArray< btOdeSolverBody * > &bodies, int &numBodies)
void ConvertConstraint (btPersistentManifold *manifold, btAlignedObjectArray< btOdeJoint * > &joints, int &numJoints, const btAlignedObjectArray< btOdeSolverBody * > &bodies, int _bodyId0, int _bodyId1, btIDebugDraw *debugDrawer)
void ConvertTypedConstraint (btTypedConstraint *constraint, btAlignedObjectArray< btOdeJoint * > &joints, int &numJoints, const btAlignedObjectArray< btOdeSolverBody * > &bodies, int _bodyId0, int _bodyId1, btIDebugDraw *debugDrawer)

Private Attributes

int m_CurBody
int m_CurJoint
int m_CurTypedJoint
float m_cfm
float m_erp
btSorLcpSolver m_SorLcpSolver
btAlignedObjectArray
< btOdeSolverBody * > 
m_odeBodies
btAlignedObjectArray
< btOdeJoint * > 
m_joints
btAlignedObjectArray
< btOdeSolverBody
m_SolverBodyArray
btAlignedObjectArray
< btOdeContactJoint
m_JointArray
btAlignedObjectArray
< btOdeTypedJoint
m_TypedJointArray

Detailed Description

btOdeQuickstepConstraintSolver is one of the available solvers for Bullet dynamics framework It uses an adapted version quickstep solver from the Open Dynamics Engine project

Definition at line 36 of file btOdeQuickstepConstraintSolver.h.


Constructor & Destructor Documentation

Definition at line 73 of file btOdeQuickstepConstraintSolver.h.

{}

Member Function Documentation

virtual void btConstraintSolver::allSolved ( const btContactSolverInfo info,
class btIDebugDraw debugDrawer,
btStackAlloc stackAlloc 
) [inline, virtual, inherited]

Definition at line 43 of file btConstraintSolver.h.

{;}

Here is the caller graph for this function:

int btOdeQuickstepConstraintSolver::ConvertBody ( btRigidBody body,
btAlignedObjectArray< btOdeSolverBody * > &  bodies,
int &  numBodies 
) [private]
void btOdeQuickstepConstraintSolver::ConvertConstraint ( btPersistentManifold *  manifold,
btAlignedObjectArray< btOdeJoint * > &  joints,
int &  numJoints,
const btAlignedObjectArray< btOdeSolverBody * > &  bodies,
int  _bodyId0,
int  _bodyId1,
btIDebugDraw debugDrawer 
) [private]
void btOdeQuickstepConstraintSolver::ConvertTypedConstraint ( btTypedConstraint constraint,
btAlignedObjectArray< btOdeJoint * > &  joints,
int &  numJoints,
const btAlignedObjectArray< btOdeSolverBody * > &  bodies,
int  _bodyId0,
int  _bodyId1,
btIDebugDraw debugDrawer 
) [private]
unsigned long btOdeQuickstepConstraintSolver::getRandSeed ( ) const [inline]

Definition at line 100 of file btOdeQuickstepConstraintSolver.h.

virtual void btConstraintSolver::prepareSolve ( int  numBodies,
int  numManifolds 
) [inline, virtual, inherited]

Definition at line 38 of file btConstraintSolver.h.

{;}

Here is the caller graph for this function:

void btOdeQuickstepConstraintSolver::reset ( ) [inline, virtual]

clear internal cached data and reset random seed

Implements btConstraintSolver.

Definition at line 91 of file btOdeQuickstepConstraintSolver.h.

setConstraintForceMixing, the cfm adds some positive value to the main diagonal This can improve convergence (make matrix positive semidefinite), but it can make the simulation look more 'springy'

Definition at line 79 of file btOdeQuickstepConstraintSolver.h.

                                                  {
              m_cfm  = cfm;
       }

setErrorReductionParamter sets the maximum amount of error reduction which limits energy addition during penetration depth recovery

Definition at line 85 of file btOdeQuickstepConstraintSolver.h.

       {
              m_erp = erp;
       }
void btOdeQuickstepConstraintSolver::setRandSeed ( unsigned long  seed) [inline]

Definition at line 96 of file btOdeQuickstepConstraintSolver.h.

virtual btScalar btOdeQuickstepConstraintSolver::solveGroup ( btCollisionObject **  bodies,
int  numBodies,
btPersistentManifold **  manifold,
int  numManifolds,
btTypedConstraint **  constraints,
int  numConstraints,
const btContactSolverInfo info,
btIDebugDraw debugDrawer,
btStackAlloc stackAlloc,
btDispatcher dispatcher 
) [virtual]

solve a group of constraints

Implements btConstraintSolver.


Member Data Documentation

Definition at line 43 of file btOdeQuickstepConstraintSolver.h.

Definition at line 39 of file btOdeQuickstepConstraintSolver.h.

Definition at line 40 of file btOdeQuickstepConstraintSolver.h.

Definition at line 41 of file btOdeQuickstepConstraintSolver.h.

Definition at line 44 of file btOdeQuickstepConstraintSolver.h.

Definition at line 52 of file btOdeQuickstepConstraintSolver.h.

Definition at line 49 of file btOdeQuickstepConstraintSolver.h.

Definition at line 48 of file btOdeQuickstepConstraintSolver.h.

Definition at line 51 of file btOdeQuickstepConstraintSolver.h.

Definition at line 46 of file btOdeQuickstepConstraintSolver.h.

Definition at line 53 of file btOdeQuickstepConstraintSolver.h.


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