Generic 6 DOF constraint that allows to set spring motors to any translational and rotational DOF.
More...
|
| | BT_DECLARE_ALIGNED_ALLOCATOR () |
| |
| | btGeneric6DofSpringConstraint (btRigidBody &rbA, btRigidBody &rbB, const btTransform &frameInA, const btTransform &frameInB, bool useLinearReferenceFrameA) |
| |
| | btGeneric6DofSpringConstraint (btRigidBody &rbB, const btTransform &frameInB, bool useLinearReferenceFrameB) |
| |
| void | enableSpring (int index, bool onOff) |
| |
| void | setStiffness (int index, btScalar stiffness) |
| |
| void | setDamping (int index, btScalar damping) |
| |
| void | setEquilibriumPoint () |
| |
| void | setEquilibriumPoint (int index) |
| |
| void | setEquilibriumPoint (int index, btScalar val) |
| |
| bool | isSpringEnabled (int index) const |
| |
| btScalar | getStiffness (int index) const |
| |
| btScalar | getDamping (int index) const |
| |
| btScalar | getEquilibriumPoint (int index) const |
| |
| virtual void | setAxis (const btVector3 &axis1, const btVector3 &axis2) |
| |
| virtual void | getInfo2 (btConstraintInfo2 *info) |
| | internal method used by the constraint solver, don't use them directly
|
| |
| virtual int | calculateSerializeBufferSize () const |
| |
| virtual const char * | serialize (void *dataBuffer, btSerializer *serializer) const |
| | fills the dataBuffer and returns the struct name (and 0 on failure)
|
| |
| | BT_DECLARE_ALIGNED_ALLOCATOR () |
| |
| | btGeneric6DofConstraint (btRigidBody &rbA, btRigidBody &rbB, const btTransform &frameInA, const btTransform &frameInB, bool useLinearReferenceFrameA) |
| |
| | btGeneric6DofConstraint (btRigidBody &rbB, const btTransform &frameInB, bool useLinearReferenceFrameB) |
| |
| void | calculateTransforms (const btTransform &transA, const btTransform &transB) |
| | Calcs global transform of the offsets.
|
| |
| void | calculateTransforms () |
| |
| const btTransform & | getCalculatedTransformA () const |
| | Gets the global transform of the offset for body A.
|
| |
| const btTransform & | getCalculatedTransformB () const |
| | Gets the global transform of the offset for body B.
|
| |
| const btTransform & | getFrameOffsetA () const |
| |
| const btTransform & | getFrameOffsetB () const |
| |
| btTransform & | getFrameOffsetA () |
| |
| btTransform & | getFrameOffsetB () |
| |
| virtual void | buildJacobian () |
| | performs Jacobian calculation, and also calculates angle differences and axis
|
| |
| virtual void | getInfo1 (btConstraintInfo1 *info) |
| | internal method used by the constraint solver, don't use them directly
|
| |
| void | getInfo1NonVirtual (btConstraintInfo1 *info) |
| |
| void | getInfo2NonVirtual (btConstraintInfo2 *info, const btTransform &transA, const btTransform &transB, const btVector3 &linVelA, const btVector3 &linVelB, const btVector3 &angVelA, const btVector3 &angVelB) |
| |
| void | updateRHS (btScalar timeStep) |
| |
| btVector3 | getAxis (int axis_index) const |
| | Get the rotation axis in global coordinates.
|
| |
| btScalar | getAngle (int axis_index) const |
| | Get the relative Euler angle.
|
| |
| btScalar | getRelativePivotPosition (int axis_index) const |
| | Get the relative position of the constraint pivot.
|
| |
| void | setFrames (const btTransform &frameA, const btTransform &frameB) |
| |
| bool | testAngularLimitMotor (int axis_index) |
| | Test angular limit.
|
| |
| void | setLinearLowerLimit (const btVector3 &linearLower) |
| |
| void | getLinearLowerLimit (btVector3 &linearLower) const |
| |
| void | setLinearUpperLimit (const btVector3 &linearUpper) |
| |
| void | getLinearUpperLimit (btVector3 &linearUpper) const |
| |
| void | setAngularLowerLimit (const btVector3 &angularLower) |
| |
| void | getAngularLowerLimit (btVector3 &angularLower) const |
| |
| void | setAngularUpperLimit (const btVector3 &angularUpper) |
| |
| void | getAngularUpperLimit (btVector3 &angularUpper) const |
| |
| btRotationalLimitMotor * | getRotationalLimitMotor (int index) |
| | Retrieves the angular limit informacion.
|
| |
| btTranslationalLimitMotor * | getTranslationalLimitMotor () |
| | Retrieves the limit informacion.
|
| |
| void | setLimit (int axis, btScalar lo, btScalar hi) |
| |
| bool | isLimited (int limitIndex) const |
| | Test limit.
|
| |
| virtual void | calcAnchorPos (void) |
| |
| int | get_limit_motor_info2 (btRotationalLimitMotor *limot, const btTransform &transA, const btTransform &transB, const btVector3 &linVelA, const btVector3 &linVelB, const btVector3 &angVelA, const btVector3 &angVelB, btConstraintInfo2 *info, int row, btVector3 &ax1, int rotational, int rotAllowed=false) |
| |
| bool | getUseFrameOffset () const |
| |
| void | setUseFrameOffset (bool frameOffsetOnOff) |
| |
| bool | getUseLinearReferenceFrameA () const |
| |
| void | setUseLinearReferenceFrameA (bool linearReferenceFrameA) |
| |
| virtual void | setParam (int num, btScalar value, int axis=-1) |
| | override the default global value of a parameter (such as ERP or CFM), optionally provide the axis (0..5).
|
| |
| virtual btScalar | getParam (int num, int axis=-1) const |
| | return the local value of parameter
|
| |
| void | setAxis (const btVector3 &axis1, const btVector3 &axis2) |
| |
| virtual int | getFlags () const |
| |
| | BT_DECLARE_ALIGNED_ALLOCATOR () |
| |
| virtual | ~btTypedConstraint () |
| |
| | btTypedConstraint (btTypedConstraintType type, btRigidBody &rbA) |
| |
| | btTypedConstraint (btTypedConstraintType type, btRigidBody &rbA, btRigidBody &rbB) |
| |
| int | getOverrideNumSolverIterations () const |
| |
| void | setOverrideNumSolverIterations (int overideNumIterations) |
| | override the number of constraint solver iterations used to solve this constraint -1 will use the default number of iterations, as specified in SolverInfo.m_numIterations
|
| |
| virtual void | setupSolverConstraint (btConstraintArray &ca, int solverBodyA, int solverBodyB, btScalar timeStep) |
| | internal method used by the constraint solver, don't use them directly
|
| |
| void | internalSetAppliedImpulse (btScalar appliedImpulse) |
| | internal method used by the constraint solver, don't use them directly
|
| |
| btScalar | internalGetAppliedImpulse () |
| | internal method used by the constraint solver, don't use them directly
|
| |
| btScalar | getBreakingImpulseThreshold () const |
| |
| void | setBreakingImpulseThreshold (btScalar threshold) |
| |
| bool | isEnabled () const |
| |
| void | setEnabled (bool enabled) |
| |
| virtual void | solveConstraintObsolete (btSolverBody &, btSolverBody &, btScalar) |
| | internal method used by the constraint solver, don't use them directly
|
| |
| const btRigidBody & | getRigidBodyA () const |
| |
| const btRigidBody & | getRigidBodyB () const |
| |
| btRigidBody & | getRigidBodyA () |
| |
| btRigidBody & | getRigidBodyB () |
| |
| int | getUserConstraintType () const |
| |
| void | setUserConstraintType (int userConstraintType) |
| |
| void | setUserConstraintId (int uid) |
| |
| int | getUserConstraintId () const |
| |
| void | setUserConstraintPtr (void *ptr) |
| |
| void * | getUserConstraintPtr () |
| |
| void | setJointFeedback (btJointFeedback *jointFeedback) |
| |
| const btJointFeedback * | getJointFeedback () const |
| |
| btJointFeedback * | getJointFeedback () |
| |
| int | getUid () const |
| |
| bool | needsFeedback () const |
| |
| void | enableFeedback (bool needsFeedback) |
| | enableFeedback will allow to read the applied linear and angular impulse use getAppliedImpulse, getAppliedLinearImpulse and getAppliedAngularImpulse to read feedback information
|
| |
| btScalar | getAppliedImpulse () const |
| | getAppliedImpulse is an estimated total applied impulse.
|
| |
| btTypedConstraintType | getConstraintType () const |
| |
| void | setDbgDrawSize (btScalar dbgDrawSize) |
| |
| btScalar | getDbgDrawSize () |
| |
| | btTypedObject (int objectType) |
| |
| int | getObjectType () const |
| |
Generic 6 DOF constraint that allows to set spring motors to any translational and rotational DOF.
DOF index used in enableSpring() and setStiffness() means: 0 : translation X 1 : translation Y 2 : translation Z 3 : rotation X (3rd Euler rotational around new position of X axis, range [-PI+epsilon, PI-epsilon] ) 4 : rotation Y (2nd Euler rotational around new position of Y axis, range [-PI/2+epsilon, PI/2-epsilon] ) 5 : rotation Z (1st Euler rotational around Z axis, range [-PI+epsilon, PI-epsilon] )
Definition at line 41 of file btGeneric6DofSpringConstraint.h.