|
Blender V4.3
|
Go to the source code of this file.
Classes | |
| class | btRotationalLimitMotor2 |
| class | btTranslationalLimitMotor2 |
| struct | btGeneric6DofSpring2ConstraintData |
| struct | btGeneric6DofSpring2ConstraintDoubleData2 |
Macros | |
| #define | btGeneric6DofSpring2ConstraintData2 btGeneric6DofSpring2ConstraintData |
| #define | btGeneric6DofSpring2ConstraintDataName "btGeneric6DofSpring2ConstraintData" |
| #define | BT_6DOF_FLAGS_AXIS_SHIFT2 4 |
Enumerations | |
| enum | RotateOrder { RO_XYZ = 0 , RO_XZY , RO_YXZ , RO_YZX , RO_ZXY , RO_ZYX } |
| enum | bt6DofFlags2 { BT_6DOF_FLAGS_CFM_STOP2 = 1 , BT_6DOF_FLAGS_ERP_STOP2 = 2 , BT_6DOF_FLAGS_CFM_MOTO2 = 4 , BT_6DOF_FLAGS_ERP_MOTO2 = 8 , BT_6DOF_FLAGS_USE_INFINITE_ERROR = (1<<16) } |
| #define BT_6DOF_FLAGS_AXIS_SHIFT2 4 |
Definition at line 270 of file btGeneric6DofSpring2Constraint.h.
| #define btGeneric6DofSpring2ConstraintData2 btGeneric6DofSpring2ConstraintData |
Definition at line 53 of file btGeneric6DofSpring2Constraint.h.
| #define btGeneric6DofSpring2ConstraintDataName "btGeneric6DofSpring2ConstraintData" |
Definition at line 54 of file btGeneric6DofSpring2Constraint.h.
| enum bt6DofFlags2 |
| Enumerator | |
|---|---|
| BT_6DOF_FLAGS_CFM_STOP2 | |
| BT_6DOF_FLAGS_ERP_STOP2 | |
| BT_6DOF_FLAGS_CFM_MOTO2 | |
| BT_6DOF_FLAGS_ERP_MOTO2 | |
| BT_6DOF_FLAGS_USE_INFINITE_ERROR | |
Definition at line 262 of file btGeneric6DofSpring2Constraint.h.
| enum RotateOrder |
| Enumerator | |
|---|---|
| RO_XYZ | |
| RO_XZY | |
| RO_YXZ | |
| RO_YZX | |
| RO_ZXY | |
| RO_ZYX | |
Definition at line 57 of file btGeneric6DofSpring2Constraint.h.
| BT_DECLARE_ALIGNED_ALLOCATOR | ( | ) |
| btGeneric6DofSpring2Constraint::btGeneric6DofSpring2Constraint | ( | btRigidBody & | rbA, |
| btRigidBody & | rbB, | ||
| const btTransform & | frameInA, | ||
| const btTransform & | frameInB, | ||
| RotateOrder | rotOrder = RO_XYZ ) |
2009 March: btGeneric6DofConstraint refactored by Roman Ponomarev Added support for generic constraint solver through getInfo1/getInfo2 methods
Definition at line 46 of file btGeneric6DofSpring2Constraint.cpp.
References calculateTransforms().
Referenced by debugDrawConstraint(), RB_constraint_new_6dof_spring2(), RB_constraint_set_damping_6dof_spring2(), RB_constraint_set_equilibrium_6dof_spring2(), RB_constraint_set_limits_6dof_spring2(), RB_constraint_set_spring_6dof_spring2(), and RB_constraint_set_stiffness_6dof_spring2().
| btGeneric6DofSpring2Constraint::btGeneric6DofSpring2Constraint | ( | btRigidBody & | rbB, |
| const btTransform & | frameInB, | ||
| RotateOrder | rotOrder = RO_XYZ ) |
not providing rigidbody A means implicitly using worldspace for body A
Definition at line 52 of file btGeneric6DofSpring2Constraint.cpp.
References calculateTransforms(), btRigidBody::getCenterOfMassTransform(), m_frameInA, m_frameInB, and rbB.
|
static |
Definition at line 53 of file btGeneric6DofConstraint.cpp.
Referenced by matrixToEulerXYZ(), matrixToEulerXZY(), matrixToEulerYXZ(), matrixToEulerYZX(), matrixToEulerZXY(), and matrixToEulerZYX().
|
virtual |
obsolete methods
performs Jacobian calculation, and also calculates angle differences and axis
we need it for both methods
Definition at line 322 of file btGeneric6DofSpring2Constraint.h.
|
protected |
|
protected |
Definition at line 637 of file btGeneric6DofSpring2Constraint.cpp.
References m_calculatedTransformA, m_calculatedTransformB, m_factA, m_factB, m_hasStaticBody, btConstraintInfo2::m_J1angularAxis, btConstraintInfo2::m_J1linearAxis, btConstraintInfo2::m_J2angularAxis, and btConstraintInfo2::m_J2linearAxis.
Referenced by get_limit_motor_info2().
|
protected |
|
virtual |
| void calculateTransforms | ( | ) |
| void calculateTransforms | ( | const btTransform & | transA, |
| const btTransform & | transB ) |
| void btGeneric6DofSpring2Constraint::enableMotor | ( | int | index, |
| bool | onOff ) |
Definition at line 1050 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, btRotationalLimitMotor::m_enableMotor, btTranslationalLimitMotor::m_enableMotor, and m_linearLimits.
| void btGeneric6DofSpringConstraint::enableSpring | ( | int | index, |
| bool | onOff ) |
Definition at line 1130 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, and m_linearLimits.
Referenced by btHinge2Constraint().
|
protected |
Definition at line 670 of file btGeneric6DofSpring2Constraint.cpp.
References BT_6DOF_FLAGS_USE_INFINITE_ERROR, BT_ONE, BT_ZERO, btSqrt(), calculateJacobi(), btConstraintInfo2::cfm, count, dot(), error(), btConstraintInfo2::fps, btRigidBody::getInvInertiaTensorWorld(), btRigidBody::getInvMass(), getMotorFactor(), length(), length2(), btRotationalLimitMotor2::m_bounce, m_calculatedTransformA, m_calculatedTransformB, btConstraintInfo2::m_constraintError, btRotationalLimitMotor2::m_currentLimit, btRotationalLimitMotor2::m_currentLimitError, btRotationalLimitMotor2::m_currentLimitErrorHi, btRotationalLimitMotor2::m_currentPosition, btRotationalLimitMotor2::m_enableMotor, btRotationalLimitMotor2::m_enableSpring, btRotationalLimitMotor2::m_equilibriumPoint, m_flags, btRotationalLimitMotor2::m_hiLimit, btRotationalLimitMotor2::m_loLimit, btConstraintInfo2::m_lowerLimit, btRotationalLimitMotor2::m_maxMotorForce, btRotationalLimitMotor2::m_motorCFM, btRotationalLimitMotor2::m_motorERP, m_rbA, m_rbB, btRotationalLimitMotor2::m_servoMotor, btRotationalLimitMotor2::m_servoTarget, btRotationalLimitMotor2::m_springDamping, btRotationalLimitMotor2::m_springDampingLimited, btRotationalLimitMotor2::m_springStiffness, btRotationalLimitMotor2::m_springStiffnessLimited, btRotationalLimitMotor2::m_stopCFM, btRotationalLimitMotor2::m_stopERP, btRotationalLimitMotor2::m_targetVelocity, btConstraintInfo2::m_upperLimit, btConstraintInfo2::rowskip, SIMD_2_PI, SIMD_INFINITY, and SIMD_PI.
Get the relative Euler angle.
Definition at line 350 of file btGeneric6DofSpring2Constraint.h.
References m_calculatedAxisAngleDiff.
Referenced by getAngle1(), and getAngle2().
| void getAngularLowerLimit | ( | btVector3 & | angularLower | ) |
Definition at line 374 of file btGeneric6DofSpring2Constraint.h.
References m_angularLimits.
| void getAngularLowerLimitReversed | ( | btVector3 & | angularLower | ) |
Definition at line 380 of file btGeneric6DofSpring2Constraint.h.
References m_angularLimits.
| void getAngularUpperLimit | ( | btVector3 & | angularUpper | ) |
Definition at line 398 of file btGeneric6DofSpring2Constraint.h.
References m_angularLimits.
| void getAngularUpperLimitReversed | ( | btVector3 & | angularUpper | ) |
Definition at line 404 of file btGeneric6DofSpring2Constraint.h.
References m_angularLimits.
Get the rotation axis in global coordinates.
Definition at line 347 of file btGeneric6DofSpring2Constraint.h.
References m_calculatedAxis.
| const btTransform & getCalculatedTransformA | ( | ) | const |
Definition at line 336 of file btGeneric6DofSpring2Constraint.h.
References m_calculatedTransformA.
| const btTransform & getCalculatedTransformB | ( | ) | const |
Definition at line 338 of file btGeneric6DofSpring2Constraint.h.
References m_calculatedTransformB.
| const btTransform & getFrameOffsetA | ( | ) | const |
Definition at line 340 of file btGeneric6DofSpring2Constraint.h.
References m_frameInA.
| const btTransform & getFrameOffsetB | ( | ) | const |
Definition at line 341 of file btGeneric6DofSpring2Constraint.h.
References m_frameInB.
|
virtual |
|
virtual |
| void getLinearLowerLimit | ( | btVector3 & | linearLower | ) |
Definition at line 358 of file btGeneric6DofSpring2Constraint.h.
References m_linearLimits, and btTranslationalLimitMotor2::m_lowerLimit.
| void getLinearUpperLimit | ( | btVector3 & | linearUpper | ) |
Definition at line 360 of file btGeneric6DofSpring2Constraint.h.
References m_linearLimits, and btTranslationalLimitMotor2::m_upperLimit.
Get the relative position of the constraint pivot.
Definition at line 353 of file btGeneric6DofSpring2Constraint.h.
References m_calculatedLinearDiff.
| btRotationalLimitMotor2 * getRotationalLimitMotor | ( | int | index | ) |
Definition at line 328 of file btGeneric6DofSpring2Constraint.h.
References m_angularLimits.
| RotateOrder getRotationOrder | ( | ) |
Definition at line 454 of file btGeneric6DofSpring2Constraint.h.
References m_rotateOrder.
| btTranslationalLimitMotor2 * getTranslationalLimitMotor | ( | ) |
Definition at line 329 of file btGeneric6DofSpring2Constraint.h.
References m_linearLimits.
| bool isLimited | ( | int | limitIndex | ) |
Definition at line 444 of file btGeneric6DofSpring2Constraint.h.
References btRotationalLimitMotor2::isLimited(), btTranslationalLimitMotor2::isLimited(), m_angularLimits, and m_linearLimits.
|
static |
MatrixToEulerXYZ from http://www.geometrictools.com/LibFoundation/Mathematics/Wm4Matrix3.inl.html.
Definition at line 62 of file btGeneric6DofConstraint.cpp.
References btAsin(), btAtan2(), btGetMatrixElem(), and SIMD_HALF_PI.
Referenced by calculateAngleInfo().
|
static |
Definition at line 104 of file btGeneric6DofSpring2Constraint.cpp.
References btAsin(), btAtan2(), btGetMatrixElem(), and SIMD_HALF_PI.
|
static |
Definition at line 137 of file btGeneric6DofSpring2Constraint.cpp.
References btAsin(), btAtan2(), btGetMatrixElem(), and SIMD_HALF_PI.
|
static |
Definition at line 170 of file btGeneric6DofSpring2Constraint.cpp.
References btAsin(), btAtan2(), btGetMatrixElem(), and SIMD_HALF_PI.
|
static |
Definition at line 203 of file btGeneric6DofSpring2Constraint.cpp.
References btAsin(), btAtan2(), btGetMatrixElem(), and SIMD_HALF_PI.
|
static |
Definition at line 236 of file btGeneric6DofSpring2Constraint.cpp.
References btAsin(), btAtan2(), btGetMatrixElem(), and SIMD_HALF_PI.
|
protected |
Definition at line 298 of file btGeneric6DofSpring2Constraint.h.
References btAssert.
|
virtual |
|
protected |
| void setAngularLowerLimit | ( | const btVector3 & | angularLower | ) |
Definition at line 362 of file btGeneric6DofSpring2Constraint.h.
References btNormalizeAngle(), and m_angularLimits.
| void setAngularLowerLimitReversed | ( | const btVector3 & | angularLower | ) |
Definition at line 368 of file btGeneric6DofSpring2Constraint.h.
References btNormalizeAngle(), and m_angularLimits.
| void setAngularUpperLimit | ( | const btVector3 & | angularUpper | ) |
Definition at line 386 of file btGeneric6DofSpring2Constraint.h.
References btNormalizeAngle(), and m_angularLimits.
| void setAngularUpperLimitReversed | ( | const btVector3 & | angularUpper | ) |
Definition at line 392 of file btGeneric6DofSpring2Constraint.h.
References btNormalizeAngle(), and m_angularLimits.
Definition at line 1041 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, btRotationalLimitMotor::m_bounce, and m_linearLimits.
| void btGeneric6DofSpringConstraint::setEquilibriumPoint | ( | ) |
Definition at line 1169 of file btGeneric6DofSpring2Constraint.cpp.
References calculateTransforms(), m_angularLimits, m_calculatedAxisAngleDiff, m_calculatedLinearDiff, m_equilibriumPoint, and m_linearLimits.
Referenced by btHinge2Constraint().
| void btGeneric6DofSpringConstraint::setEquilibriumPoint | ( | int | index | ) |
Definition at line 1179 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, calculateTransforms(), m_angularLimits, m_calculatedAxisAngleDiff, m_calculatedLinearDiff, and m_linearLimits.
Definition at line 1189 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, and m_linearLimits.
| void setFrames | ( | const btTransform & | frameA, |
| const btTransform & | frameB ) |
Definition at line 264 of file btSliderConstraint.h.
Definition at line 412 of file btGeneric6DofSpring2Constraint.h.
References btNormalizeAngle(), m_angularLimits, btRotationalLimitMotor2::m_hiLimit, m_linearLimits, btRotationalLimitMotor2::m_loLimit, btTranslationalLimitMotor2::m_lowerLimit, and btTranslationalLimitMotor2::m_upperLimit.
Definition at line 428 of file btGeneric6DofSpring2Constraint.h.
References btNormalizeAngle(), m_angularLimits, btRotationalLimitMotor2::m_hiLimit, m_linearLimits, btRotationalLimitMotor2::m_loLimit, btTranslationalLimitMotor2::m_lowerLimit, and btTranslationalLimitMotor2::m_upperLimit.
|
protected |
| void setLinearLowerLimit | ( | const btVector3 & | linearLower | ) |
Definition at line 357 of file btGeneric6DofSpring2Constraint.h.
References m_linearLimits, and btTranslationalLimitMotor2::m_lowerLimit.
| void setLinearUpperLimit | ( | const btVector3 & | linearUpper | ) |
Definition at line 359 of file btGeneric6DofSpring2Constraint.h.
References m_linearLimits, and btTranslationalLimitMotor2::m_upperLimit.
Definition at line 1121 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, m_linearLimits, btRotationalLimitMotor::m_maxMotorForce, and btTranslationalLimitMotor::m_maxMotorForce.
| void setRotationOrder | ( | RotateOrder | order | ) |
Definition at line 453 of file btGeneric6DofSpring2Constraint.h.
References m_rotateOrder.
| void btGeneric6DofSpring2Constraint::setServo | ( | int | index, |
| bool | onOff ) |
Definition at line 1059 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, and m_linearLimits.
Definition at line 1077 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, m_linearLimits, SIMD_2_PI, and SIMD_PI.
| void btGeneric6DofSpring2Constraint::setStiffness | ( | int | index, |
| btScalar | stiffness, | ||
| bool | limitIfNeeded = true ) |
Definition at line 1139 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, and m_linearLimits.
Referenced by btHinge2Constraint().
Definition at line 1068 of file btGeneric6DofSpring2Constraint.cpp.
References btAssert, m_angularLimits, m_linearLimits, btRotationalLimitMotor::m_targetVelocity, and btTranslationalLimitMotor::m_targetVelocity.
|
protected |
| btGeneric6DofSpring2Constraint __pad0__ |
Definition at line 273 of file btGeneric6DofSpring2Constraint.h.
| btRotationalLimitMotor2 m_angularLimits[3] |
Definition at line 283 of file btGeneric6DofSpring2Constraint.h.
Referenced by getAngularLowerLimit(), getAngularLowerLimitReversed(), getAngularUpperLimit(), getAngularUpperLimitReversed(), getRotationalLimitMotor(), isLimited(), setAngularLowerLimit(), setAngularLowerLimitReversed(), setAngularUpperLimit(), setAngularUpperLimitReversed(), setLimit(), and setLimitReversed().
|
protected |
Definition at line 291 of file btGeneric6DofSpring2Constraint.h.
Referenced by getAxis().
|
protected |
Definition at line 290 of file btGeneric6DofSpring2Constraint.h.
Referenced by getAngle().
|
protected |
Definition at line 292 of file btGeneric6DofSpring2Constraint.h.
Referenced by getRelativePivotPosition().
|
protected |
Definition at line 288 of file btGeneric6DofSpring2Constraint.h.
Referenced by getCalculatedTransformA().
|
protected |
Definition at line 289 of file btGeneric6DofSpring2Constraint.h.
Referenced by getCalculatedTransformB().
|
protected |
Definition at line 293 of file btGeneric6DofSpring2Constraint.h.
|
protected |
Definition at line 294 of file btGeneric6DofSpring2Constraint.h.
|
protected |
Definition at line 296 of file btGeneric6DofSpring2Constraint.h.
| btTransform m_frameInB |
Definition at line 277 of file btGeneric6DofSpring2Constraint.h.
Referenced by getFrameOffsetB().
|
protected |
Definition at line 295 of file btGeneric6DofSpring2Constraint.h.
| btJacobianEntry m_jacAng[3] |
Definition at line 280 of file btGeneric6DofSpring2Constraint.h.
| btJacobianEntry m_jacLinear[3] |
Definition at line 279 of file btGeneric6DofSpring2Constraint.h.
| btTranslationalLimitMotor2 m_linearLimits |
Definition at line 282 of file btGeneric6DofSpring2Constraint.h.
Referenced by getLinearLowerLimit(), getLinearUpperLimit(), getTranslationalLimitMotor(), isLimited(), setLimit(), setLimitReversed(), setLinearLowerLimit(), and setLinearUpperLimit().
| RotateOrder m_rotateOrder |
Definition at line 285 of file btGeneric6DofSpring2Constraint.h.
Referenced by getRotationOrder(), and setRotationOrder().