22 #define DEFAULT_DEBUGDRAW_SIZE btScalar(0.3f)    26 m_userConstraintType(-1),
    27 m_userConstraintPtr((void*)-1),
    30 m_needsFeedback(false),
    31 m_overrideNumSolverIterations(-1),
    33 m_rbB(getFixedBody()),
    66         else if(lowLim == uppLim)
    74                 if((pos >= lowLim) && (pos < (lowLim - delta_max)))
    76                         lim_fact = (lowLim - pos) / delta_max;
    89                 if((pos <= uppLim) && (pos > (uppLim - delta_max)))
    91                         lim_fact = (uppLim - pos) / delta_max;
   135         tcd->m_disableCollisionsBetweenLinkedBodies = 
false;
   140                         tcd->m_disableCollisionsBetweenLinkedBodies = 
true;
   143                         tcd->m_disableCollisionsBetweenLinkedBodies = 
true;
   158         m_halfRange = (high - low) / 2.0f;
   160         m_softness =  _softness;
   161         m_biasFactor = _biasFactor;
   162         m_relaxationFactor = _relaxationFactor;
   169         m_solveLimit = 
false;
   171         if (m_halfRange >= 0.0f)
   174                 if (deviation < -m_halfRange)
   177                         m_correction = - (deviation + m_halfRange);
   180                 else if (deviation > m_halfRange)
   183                         m_correction = m_halfRange - deviation;
   192         return m_correction * m_sign;
   197         if (m_halfRange > 0.0f)
   200                 if (!
btEqual(relativeAngle, m_halfRange))
   202                         if (relativeAngle > 0.0f)
 
void * m_userConstraintPtr
virtual void * getUniquePointer(void *oldPtr)=0
bool btEqual(btScalar a, btScalar eps)
#define DEFAULT_DEBUGDRAW_SIZE
int m_overrideNumSolverIterations
btJointFeedback * m_jointFeedback
int getNumConstraintRefs() const 
btScalar m_breakingImpulseThreshold
#define btTypedConstraintDataName
void set(btScalar low, btScalar high, btScalar _softness=0.9f, btScalar _biasFactor=0.3f, btScalar _relaxationFactor=1.0f)
Sets all limit's parameters. 
btScalar getError() const 
Returns correction value multiplied by sign value. 
#define btTypedConstraintData2
The btRigidBody is the main class for rigid body objects. 
btVector3 can be used to represent 3D points and vectors. 
btScalar btNormalizeAngle(btScalar angleInRadians)
static btRigidBody & getFixedBody()
btTypedConstraint * getConstraintRef(int index)
void setMassProps(btScalar mass, const btVector3 &inertia)
rudimentary class to provide type info 
virtual void serializeName(const char *ptr)=0
btScalar getMotorFactor(btScalar pos, btScalar lowLim, btScalar uppLim, btScalar vel, btScalar timeFact)
internal method used by the constraint solver, don't use them directly 
virtual const char * serialize(void *dataBuffer, btSerializer *serializer) const 
fills the dataBuffer and returns the struct name (and 0 on failure) 
btTypedConstraint(btTypedConstraintType type, btRigidBody &rbA)
void fit(btScalar &angle) const 
Checks given angle against limit. 
btScalar m_appliedImpulse
void test(const btScalar angle)
Checks conastaint angle against limit. 
virtual const char * findNameForPointer(const void *ptr) const =0
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...