36 #ifndef BT_CONETWISTCONSTRAINT_H
37 #define BT_CONETWISTCONSTRAINT_H
43 #ifdef BT_USE_DOUBLE_PRECISION
44 #define btConeTwistConstraintData2 btConeTwistConstraintDoubleData
45 #define btConeTwistConstraintDataName "btConeTwistConstraintDoubleData"
47 #define btConeTwistConstraintData2 btConeTwistConstraintData
48 #define btConeTwistConstraintDataName "btConeTwistConstraintData"
49 #endif //BT_USE_DOUBLE_PRECISION
64 #ifdef IN_PARALLELL_SOLVER
133 void adjustSwingAxisToUseEllipseNormal(
btVector3& vSwingAxis)
const;
144 virtual void buildJacobian();
169 void setAngularOnly(
bool angularOnly)
171 m_angularOnly = angularOnly;
180 m_twistSpan = limitValue;
185 m_swingSpan2 = limitValue;
190 m_swingSpan1 = limitValue;
212 m_swingSpan1 = _swingSpan1;
213 m_swingSpan2 = _swingSpan2;
214 m_twistSpan = _twistSpan;
216 m_limitSoftness = _softness;
217 m_biasFactor = _biasFactor;
218 m_relaxationFactor = _relaxationFactor;
224 inline int getSolveTwistLimit()
226 return m_solveTwistLimit;
229 inline int getSolveSwingLimit()
231 return m_solveTwistLimit;
236 return m_twistLimitSign;
239 void calcAngleInfo();
276 void setMotorTargetInConstraintSpace(
const btQuaternion &q);
282 virtual void setParam(
int num,
btScalar value,
int axis = -1);
298 virtual btScalar getParam(
int num,
int axis = -1)
const;
329 #ifdef BT_BACKWARDS_COMPATIBLE_SERIALIZATION
350 #endif //BT_BACKWARDS_COMPATIBLE_SERIALIZATION
381 #endif //BT_CONETWISTCONSTRAINT_H