16 #ifndef BT_TYPED_CONSTRAINT_H
17 #define BT_TYPED_CONSTRAINT_H
50 #define btAssertConstrParams(_par) btAssert(_par)
52 #define btAssertConstrParams(_par)
109 int m_numConstraintRows,
nub;
150 return m_overrideNumSolverIterations;
157 m_overrideNumSolverIterations = overideNumIterations;
173 virtual void getInfo1 (btConstraintInfo1* info)=0;
176 virtual void getInfo2 (btConstraintInfo2* info)=0;
181 m_appliedImpulse = appliedImpulse;
186 return m_appliedImpulse;
192 return m_breakingImpulseThreshold;
197 m_breakingImpulseThreshold = threshold;
235 return m_userConstraintType ;
240 m_userConstraintType = userConstraintType;
245 m_userConstraintId = uid;
250 return m_userConstraintId;
255 m_userConstraintPtr = ptr;
260 return m_userConstraintPtr;
265 m_jointFeedback = jointFeedback;
270 return m_jointFeedback;
275 return m_jointFeedback;
281 return m_userConstraintId;
286 return m_needsFeedback;
293 m_needsFeedback = needsFeedback;
301 return m_appliedImpulse;
311 m_dbgDrawSize = dbgDrawSize;
315 return m_dbgDrawSize;
320 virtual void setParam(
int num,
btScalar value,
int axis = -1) = 0;
323 virtual btScalar getParam(
int num,
int axis = -1)
const = 0;
325 virtual int calculateSerializeBufferSize()
const;
328 virtual const char* serialize(
void* dataBuffer,
btSerializer* serializer)
const;
336 if(angleLowerLimitInRadians >= angleUpperLimitInRadians)
338 return angleInRadians;
340 else if(angleInRadians < angleLowerLimitInRadians)
344 return (diffLo < diffHi) ? angleInRadians : (angleInRadians +
SIMD_2_PI);
346 else if(angleInRadians > angleUpperLimitInRadians)
350 return (diffLo < diffHi) ? (angleInRadians -
SIMD_2_PI) : angleInRadians;
354 return angleInRadians;
482 #endif //BT_TYPED_CONSTRAINT_H