Bullet Collision Detection & Physics Library
btHingeAccumulatedAngleConstraint Class Reference

The getAccumulatedHingeAngle returns the accumulated hinge angle, taking rotation across the -PI/PI boundary into account. More...

#include <btHingeConstraint.h>

Inheritance diagram for btHingeAccumulatedAngleConstraint:
Collaboration diagram for btHingeAccumulatedAngleConstraint:

Public Member Functions

 BT_DECLARE_ALIGNED_ALLOCATOR ()
 btHingeAccumulatedAngleConstraint (btRigidBody &rbA, btRigidBody &rbB, const btVector3 &pivotInA, const btVector3 &pivotInB, const btVector3 &axisInA, const btVector3 &axisInB, bool useReferenceFrameA=false)
 btHingeAccumulatedAngleConstraint (btRigidBody &rbA, const btVector3 &pivotInA, const btVector3 &axisInA, bool useReferenceFrameA=false)
 btHingeAccumulatedAngleConstraint (btRigidBody &rbA, btRigidBody &rbB, const btTransform &rbAFrame, const btTransform &rbBFrame, bool useReferenceFrameA=false)
 btHingeAccumulatedAngleConstraint (btRigidBody &rbA, const btTransform &rbAFrame, bool useReferenceFrameA=false)
btScalar getAccumulatedHingeAngle ()
void setAccumulatedHingeAngle (btScalar accAngle)
virtual void getInfo1 (btConstraintInfo1 *info)
 internal method used by the constraint solver, don't use them directly
Public Member Functions inherited from btHingeConstraint
 BT_DECLARE_ALIGNED_ALLOCATOR ()
 btHingeConstraint (btRigidBody &rbA, btRigidBody &rbB, const btVector3 &pivotInA, const btVector3 &pivotInB, const btVector3 &axisInA, const btVector3 &axisInB, bool useReferenceFrameA=false)
 btHingeConstraint (btRigidBody &rbA, const btVector3 &pivotInA, const btVector3 &axisInA, bool useReferenceFrameA=false)
 btHingeConstraint (btRigidBody &rbA, btRigidBody &rbB, const btTransform &rbAFrame, const btTransform &rbBFrame, bool useReferenceFrameA=false)
 btHingeConstraint (btRigidBody &rbA, const btTransform &rbAFrame, bool useReferenceFrameA=false)
virtual void buildJacobian ()
 internal method used by the constraint solver, don't use them directly
void getInfo1NonVirtual (btConstraintInfo1 *info)
virtual void getInfo2 (btConstraintInfo2 *info)
 internal method used by the constraint solver, don't use them directly
void getInfo2NonVirtual (btConstraintInfo2 *info, const btTransform &transA, const btTransform &transB, const btVector3 &angVelA, const btVector3 &angVelB)
void getInfo2Internal (btConstraintInfo2 *info, const btTransform &transA, const btTransform &transB, const btVector3 &angVelA, const btVector3 &angVelB)
void getInfo2InternalUsingFrameOffset (btConstraintInfo2 *info, const btTransform &transA, const btTransform &transB, const btVector3 &angVelA, const btVector3 &angVelB)
void updateRHS (btScalar timeStep)
const btRigidBodygetRigidBodyA () const
const btRigidBodygetRigidBodyB () const
btRigidBodygetRigidBodyA ()
btRigidBodygetRigidBodyB ()
btTransformgetFrameOffsetA ()
btTransformgetFrameOffsetB ()
void setFrames (const btTransform &frameA, const btTransform &frameB)
void setAngularOnly (bool angularOnly)
void enableAngularMotor (bool enableMotor, btScalar targetVelocity, btScalar maxMotorImpulse)
void enableMotor (bool enableMotor)
void setMaxMotorImpulse (btScalar maxMotorImpulse)
void setMotorTargetVelocity (btScalar motorTargetVelocity)
void setMotorTarget (const btQuaternion &qAinB, btScalar dt)
void setMotorTarget (btScalar targetAngle, btScalar dt)
void setLimit (btScalar low, btScalar high, btScalar _softness=0.9f, btScalar _biasFactor=0.3f, btScalar _relaxationFactor=1.0f)
btScalar getLimitSoftness () const
btScalar getLimitBiasFactor () const
btScalar getLimitRelaxationFactor () const
void setAxis (btVector3 &axisInA)
bool hasLimit () const
btScalar getLowerLimit () const
btScalar getUpperLimit () const
btScalar getHingeAngle ()
 The getHingeAngle gives the hinge angle in range [-PI,PI].
btScalar getHingeAngle (const btTransform &transA, const btTransform &transB)
void testLimit (const btTransform &transA, const btTransform &transB)
const btTransformgetAFrame () const
const btTransformgetBFrame () const
btTransformgetAFrame ()
btTransformgetBFrame ()
int getSolveLimit ()
btScalar getLimitSign ()
bool getAngularOnly ()
bool getEnableAngularMotor ()
btScalar getMotorTargetVelocity ()
btScalar getMaxMotorImpulse ()
bool getUseFrameOffset ()
void setUseFrameOffset (bool frameOffsetOnOff)
bool getUseReferenceFrameA () const
void setUseReferenceFrameA (bool useReferenceFrameA)
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
virtual int getFlags () const
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)
Public Member Functions inherited from btTypedConstraint
 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 btRigidBodygetRigidBodyA () const
const btRigidBodygetRigidBodyB () const
btRigidBodygetRigidBodyA ()
btRigidBodygetRigidBodyB ()
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 btJointFeedbackgetJointFeedback () const
btJointFeedbackgetJointFeedback ()
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 ()
Public Member Functions inherited from btTypedObject
 btTypedObject (int objectType)
int getObjectType () const

Protected Attributes

btScalar m_accumulatedAngle
Protected Attributes inherited from btTypedConstraint
btRigidBodym_rbA
btRigidBodym_rbB
btScalar m_appliedImpulse
btScalar m_dbgDrawSize
btJointFeedbackm_jointFeedback

Additional Inherited Members

Static Public Member Functions inherited from btTypedConstraint
static btRigidBodygetFixedBody ()
Public Attributes inherited from btTypedObject
int m_objectType
Protected Member Functions inherited from btTypedConstraint
btScalar getMotorFactor (btScalar pos, btScalar lowLim, btScalar uppLim, btScalar vel, btScalar timeFact)
 internal method used by the constraint solver, don't use them directly

Detailed Description

The getAccumulatedHingeAngle returns the accumulated hinge angle, taking rotation across the -PI/PI boundary into account.

Definition at line 360 of file btHingeConstraint.h.

Constructor & Destructor Documentation

◆ btHingeAccumulatedAngleConstraint() [1/4]

btHingeAccumulatedAngleConstraint::btHingeAccumulatedAngleConstraint ( btRigidBody & rbA,
btRigidBody & rbB,
const btVector3 & pivotInA,
const btVector3 & pivotInB,
const btVector3 & axisInA,
const btVector3 & axisInB,
bool useReferenceFrameA = false )
inline

Definition at line 369 of file btHingeConstraint.h.

◆ btHingeAccumulatedAngleConstraint() [2/4]

btHingeAccumulatedAngleConstraint::btHingeAccumulatedAngleConstraint ( btRigidBody & rbA,
const btVector3 & pivotInA,
const btVector3 & axisInA,
bool useReferenceFrameA = false )
inline

Definition at line 375 of file btHingeConstraint.h.

◆ btHingeAccumulatedAngleConstraint() [3/4]

btHingeAccumulatedAngleConstraint::btHingeAccumulatedAngleConstraint ( btRigidBody & rbA,
btRigidBody & rbB,
const btTransform & rbAFrame,
const btTransform & rbBFrame,
bool useReferenceFrameA = false )
inline

Definition at line 381 of file btHingeConstraint.h.

◆ btHingeAccumulatedAngleConstraint() [4/4]

btHingeAccumulatedAngleConstraint::btHingeAccumulatedAngleConstraint ( btRigidBody & rbA,
const btTransform & rbAFrame,
bool useReferenceFrameA = false )
inline

Definition at line 387 of file btHingeConstraint.h.

Member Function Documentation

◆ BT_DECLARE_ALIGNED_ALLOCATOR()

btHingeAccumulatedAngleConstraint::BT_DECLARE_ALIGNED_ALLOCATOR ( )

◆ getAccumulatedHingeAngle()

btScalar btHingeAccumulatedAngleConstraint::getAccumulatedHingeAngle ( )

Definition at line 315 of file btHingeConstraint.cpp.

◆ getInfo1()

void btHingeAccumulatedAngleConstraint::getInfo1 ( btConstraintInfo1 * info)
virtual

internal method used by the constraint solver, don't use them directly

Reimplemented from btHingeConstraint.

Definition at line 326 of file btHingeConstraint.cpp.

◆ setAccumulatedHingeAngle()

void btHingeAccumulatedAngleConstraint::setAccumulatedHingeAngle ( btScalar accAngle)

Definition at line 321 of file btHingeConstraint.cpp.

Member Data Documentation

◆ m_accumulatedAngle

btScalar btHingeAccumulatedAngleConstraint::m_accumulatedAngle
protected

Definition at line 364 of file btHingeConstraint.h.


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