|
Blender V4.5
|
#include "LinearMath/btScalar.h"#include "LinearMath/btVector3.h"#include "LinearMath/btQuaternion.h"#include "LinearMath/btMatrix3x3.h"#include "LinearMath/btAlignedObjectArray.h"#include "btMultiBodyLink.h"Go to the source code of this file.
Macros | |
| #define | btMultiBodyData btMultiBodyFloatData |
| serialization data, don't change them if you are not familiar with the details of the serialization mechanisms | |
| #define | btMultiBodyDataName "btMultiBodyFloatData" |
| #define | btMultiBodyLinkData btMultiBodyLinkFloatData |
| #define | btMultiBodyLinkDataName "btMultiBodyLinkFloatData" |
Functions | |
| btMultiBody (int n_links, btScalar mass, const btVector3 &inertia, bool fixedBase, bool canSleep, bool deprecatedMultiDof=true) | |
| virtual | ~btMultiBody () |
| void | setupFixed (int i, btScalar mass, const btVector3 &inertia, int parent, const btQuaternion &rotParentToThis, const btVector3 &parentComToThisPivotOffset, const btVector3 &thisPivotToThisComOffset, bool deprecatedDisableParentCollision=true) |
| void | setupPrismatic (int i, btScalar mass, const btVector3 &inertia, int parent, const btQuaternion &rotParentToThis, const btVector3 &jointAxis, const btVector3 &parentComToThisPivotOffset, const btVector3 &thisPivotToThisComOffset, bool disableParentCollision) |
| void | setupRevolute (int i, btScalar mass, const btVector3 &inertia, int parentIndex, const btQuaternion &rotParentToThis, const btVector3 &jointAxis, const btVector3 &parentComToThisPivotOffset, const btVector3 &thisPivotToThisComOffset, bool disableParentCollision=false) |
| void | setupSpherical (int i, btScalar mass, const btVector3 &inertia, int parent, const btQuaternion &rotParentToThis, const btVector3 &parentComToThisPivotOffset, const btVector3 &thisPivotToThisComOffset, bool disableParentCollision=false) |
| void | setupPlanar (int i, btScalar mass, const btVector3 &inertia, int parent, const btQuaternion &rotParentToThis, const btVector3 &rotationAxis, const btVector3 &parentComToThisComOffset, bool disableParentCollision=false) |
| const btMultibodyLink & | getLink (int index) const |
| void | setBaseCollider (btMultiBodyLinkCollider *collider) |
| const btMultiBodyLinkCollider * | getBaseCollider () const |
| const btMultiBodyLinkCollider * | getLinkCollider (int index) const |
| int | getParent (int link_num) const |
| int | getNumLinks () const |
| int | getNumDofs () const |
| int | getNumPosVars () const |
| btScalar | getBaseMass () const |
| const btVector3 & | getBaseInertia () const |
| btScalar | getLinkMass (int i) const |
| const btVector3 & | getLinkInertia (int i) const |
| void | setBaseMass (btScalar mass) |
| void | setBaseInertia (const btVector3 &inertia) |
| const btVector3 & | getBasePos () const |
| const btVector3 | getBaseVel () const |
| const btQuaternion & | getWorldToBaseRot () const |
| const btVector3 & | getInterpolateBasePos () const |
| const btQuaternion & | getInterpolateWorldToBaseRot () const |
| btVector3 | getBaseOmega () const |
| void | setBasePos (const btVector3 &pos) |
| void | setBaseWorldTransform (const btTransform &tr) |
| btTransform | getBaseWorldTransform () const |
| void | setBaseVel (const btVector3 &vel) |
| void | setWorldToBaseRot (const btQuaternion &rot) |
| void | setBaseOmega (const btVector3 &omega) |
| btScalar | getJointPos (int i) const |
| btScalar | getJointVel (int i) const |
| btScalar * | getJointVelMultiDof (int i) |
| btScalar * | getJointPosMultiDof (int i) |
| void | setJointPos (int i, btScalar q) |
| void | setJointVel (int i, btScalar qdot) |
| void | setJointPosMultiDof (int i, const double *q) |
| void | setJointVelMultiDof (int i, const double *qdot) |
| void | setJointPosMultiDof (int i, const float *q) |
| void | setJointVelMultiDof (int i, const float *qdot) |
| const btScalar * | getVelocityVector () const |
| const btScalar * | getDeltaVelocityVector () const |
| const btScalar * | getSplitVelocityVector () const |
| const btVector3 & | getRVector (int i) const |
| const btQuaternion & | getParentToLocalRot (int i) const |
| const btVector3 & | getInterpolateRVector (int i) const |
| const btQuaternion & | getInterpolateParentToLocalRot (int i) const |
| btVector3 | localPosToWorld (int i, const btVector3 &local_pos) const |
| btVector3 | localDirToWorld (int i, const btVector3 &local_dir) const |
| btVector3 | worldPosToLocal (int i, const btVector3 &world_pos) const |
| btVector3 | worldDirToLocal (int i, const btVector3 &world_dir) const |
| btMatrix3x3 | localFrameToWorld (int i, const btMatrix3x3 &local_frame) const |
| void | clearForcesAndTorques () |
| void | clearConstraintForces () |
| void | clearVelocities () |
| void | addBaseForce (const btVector3 &f) |
| void | addBaseTorque (const btVector3 &t) |
| void | addLinkForce (int i, const btVector3 &f) |
| void | addLinkTorque (int i, const btVector3 &t) |
| void | addBaseConstraintForce (const btVector3 &f) |
| void | addBaseConstraintTorque (const btVector3 &t) |
| void | addLinkConstraintForce (int i, const btVector3 &f) |
| void | addLinkConstraintTorque (int i, const btVector3 &t) |
| void | addJointTorque (int i, btScalar Q) |
| void | addJointTorqueMultiDof (int i, int dof, btScalar Q) |
| void | addJointTorqueMultiDof (int i, const btScalar *Q) |
| const btVector3 & | getBaseForce () const |
| const btVector3 & | getBaseTorque () const |
| const btVector3 & | getLinkForce (int i) const |
| const btVector3 & | getLinkTorque (int i) const |
| btScalar | getJointTorque (int i) const |
| btScalar * | getJointTorqueMultiDof (int i) |
| void | computeAccelerationsArticulatedBodyAlgorithmMultiDof (btScalar dt, btAlignedObjectArray< btScalar > &scratch_r, btAlignedObjectArray< btVector3 > &scratch_v, btAlignedObjectArray< btMatrix3x3 > &scratch_m, bool isConstraintPass, bool jointFeedbackInWorldSpace, bool jointFeedbackInJointFrame) |
| void | calcAccelerationDeltasMultiDof (const btScalar *force, btScalar *output, btAlignedObjectArray< btScalar > &scratch_r, btAlignedObjectArray< btVector3 > &scratch_v) const |
| stepVelocitiesMultiDof is deprecated, use computeAccelerationsArticulatedBodyAlgorithmMultiDof instead | |
| void | applyDeltaVeeMultiDof2 (const btScalar *delta_vee, btScalar multiplier) |
| void | applyDeltaSplitVeeMultiDof (const btScalar *delta_vee, btScalar multiplier) |
| void | addSplitV () |
| void | substractSplitV () |
| void | processDeltaVeeMultiDof2 () |
| void | applyDeltaVeeMultiDof (const btScalar *delta_vee, btScalar multiplier) |
| void | stepPositionsMultiDof (btScalar dt, btScalar *pq=0, btScalar *pqd=0) |
| void | predictPositionsMultiDof (btScalar dt) |
| void | fillContactJacobianMultiDof (int link, const btVector3 &contact_point, const btVector3 &normal, btScalar *jac, btAlignedObjectArray< btScalar > &scratch_r, btAlignedObjectArray< btVector3 > &scratch_v, btAlignedObjectArray< btMatrix3x3 > &scratch_m) const |
| void | fillConstraintJacobianMultiDof (int link, const btVector3 &contact_point, const btVector3 &normal_ang, const btVector3 &normal_lin, btScalar *jac, btAlignedObjectArray< btScalar > &scratch_r, btAlignedObjectArray< btVector3 > &scratch_v, btAlignedObjectArray< btMatrix3x3 > &scratch_m) const |
| void | setCanSleep (bool canSleep) |
| bool | getCanSleep () const |
| bool | getCanWakeup () const |
| void | setCanWakeup (bool canWakeup) |
| bool | isAwake () const |
| void | wakeUp () |
| void | goToSleep () |
| void | checkMotionAndSleepIfRequired (btScalar timestep) |
| bool | hasFixedBase () const |
| void | setFixedBase (bool fixedBase) |
| int | getCompanionId () const |
| void | setCompanionId (int id) |
| void | setNumLinks (int numLinks) |
| btScalar | getLinearDamping () const |
| void | setLinearDamping (btScalar damp) |
| btScalar | getAngularDamping () const |
| void | setAngularDamping (btScalar damp) |
| bool | getUseGyroTerm () const |
| void | setUseGyroTerm (bool useGyro) |
| btScalar | getMaxCoordinateVelocity () const |
| void | setMaxCoordinateVelocity (btScalar maxVel) |
| btScalar | getMaxAppliedImpulse () const |
| void | setMaxAppliedImpulse (btScalar maxImp) |
| void | setHasSelfCollision (bool hasSelfCollision) |
| bool | hasSelfCollision () const |
| void | finalizeMultiDof () |
| void | useRK4Integration (bool use) |
| bool | isUsingRK4Integration () const |
| void | useGlobalVelocities (bool use) |
| bool | isUsingGlobalVelocities () const |
| bool | isPosUpdated () const |
| void | setPosUpdated (bool updated) |
| bool | internalNeedsJointFeedback () const |
| void | forwardKinematics (btAlignedObjectArray< btQuaternion > &world_to_local, btAlignedObjectArray< btVector3 > &local_origin) |
| void | compTreeLinkVelocities (btVector3 *omega, btVector3 *vel) const |
| void | updateCollisionObjectWorldTransforms (btAlignedObjectArray< btQuaternion > &world_to_local, btAlignedObjectArray< btVector3 > &local_origin) |
| void | updateCollisionObjectInterpolationWorldTransforms (btAlignedObjectArray< btQuaternion > &world_to_local, btAlignedObjectArray< btVector3 > &local_origin) |
| virtual int | calculateSerializeBufferSize () const |
| virtual const char * | serialize (void *dataBuffer, class btSerializer *serializer) const |
| fills the dataBuffer and returns the struct name (and 0 on failure) | |
| const char * | getBaseName () const |
| void | setBaseName (const char *name) |
| memory of setBaseName needs to be manager by user | |
| void * | getUserPointer () const |
| users can point to their objects, userPointer is not used by Bullet | |
| int | getUserIndex () const |
| int | getUserIndex2 () const |
| void | setUserPointer (void *userPointer) |
| users can point to their objects, userPointer is not used by Bullet | |
| void | setUserIndex (int index) |
| users can point to their objects, userPointer is not used by Bullet | |
| void | setUserIndex2 (int index) |
| static void | spatialTransform (const btMatrix3x3 &rotation_matrix, const btVector3 &displacement, const btVector3 &top_in, const btVector3 &bottom_in, btVector3 &top_out, btVector3 &bottom_out) |
Variables | |
| btMultiBody | |
| #define btMultiBodyData btMultiBodyFloatData |
serialization data, don't change them if you are not familiar with the details of the serialization mechanisms
Definition at line 40 of file btMultiBody.h.
Referenced by btMultiBodyLinkCollider::serialize().
| #define btMultiBodyDataName "btMultiBodyFloatData" |
Definition at line 41 of file btMultiBody.h.
| #define btMultiBodyLinkData btMultiBodyLinkFloatData |
Definition at line 42 of file btMultiBody.h.
| #define btMultiBodyLinkDataName "btMultiBodyLinkFloatData" |
Definition at line 43 of file btMultiBody.h.
| void addBaseConstraintForce | ( | const btVector3 & | f | ) |
Definition at line 333 of file btMultiBody.h.
References addBaseConstraintForce(), and btVector3.
Referenced by addBaseConstraintForce().
| void addBaseConstraintTorque | ( | const btVector3 & | t | ) |
Definition at line 337 of file btMultiBody.h.
References addBaseConstraintTorque(), and btVector3.
Referenced by addBaseConstraintTorque().
| void addBaseForce | ( | const btVector3 & | f | ) |
Definition at line 325 of file btMultiBody.h.
References addBaseForce(), and btVector3.
Referenced by addBaseForce().
| void addBaseTorque | ( | const btVector3 & | t | ) |
Definition at line 329 of file btMultiBody.h.
References addBaseTorque(), and btVector3.
Referenced by addBaseTorque().
| void btMultiBody::addJointTorque | ( | int | i, |
| btScalar | Q ) |
Definition at line 640 of file btMultiBody.cpp.
References i.
| void btMultiBody::addJointTorqueMultiDof | ( | int | i, |
| const btScalar * | Q ) |
Definition at line 650 of file btMultiBody.cpp.
References i.
| void btMultiBody::addJointTorqueMultiDof | ( | int | i, |
| int | dof, | ||
| btScalar | Q ) |
Definition at line 645 of file btMultiBody.cpp.
References i.
| void btMultiBody::addLinkConstraintForce | ( | int | i, |
| const btVector3 & | f ) |
Definition at line 630 of file btMultiBody.cpp.
| void btMultiBody::addLinkConstraintTorque | ( | int | i, |
| const btVector3 & | t ) |
Definition at line 635 of file btMultiBody.cpp.
| void btMultiBody::addLinkForce | ( | int | i, |
| const btVector3 & | f ) |
Definition at line 620 of file btMultiBody.cpp.
| void btMultiBody::addLinkTorque | ( | int | i, |
| const btVector3 & | t ) |
Definition at line 625 of file btMultiBody.cpp.
| void addSplitV | ( | ) |
Definition at line 412 of file btMultiBody.h.
References addSplitV(), and applyDeltaVeeMultiDof().
Referenced by addSplitV().
Definition at line 405 of file btMultiBody.h.
References applyDeltaSplitVeeMultiDof(), and getNumDofs().
Referenced by applyDeltaSplitVeeMultiDof().
Definition at line 435 of file btMultiBody.h.
References applyDeltaVeeMultiDof(), btClamp(), and getNumDofs().
Referenced by addSplitV(), applyDeltaVeeMultiDof(), computeAccelerationsArticulatedBodyAlgorithmMultiDof(), processDeltaVeeMultiDof2(), and substractSplitV().
Definition at line 398 of file btMultiBody.h.
References applyDeltaVeeMultiDof2(), and getNumDofs().
Referenced by applyDeltaVeeMultiDof2().
| btMultiBody | ( | int | n_links, |
| btScalar | mass, | ||
| const btVector3 & | inertia, | ||
| bool | fixedBase, | ||
| bool | canSleep, | ||
| bool | deprecatedMultiDof = true ) |
References btMultiBody, btVector3, i, setupFixed(), setupPlanar(), setupPrismatic(), setupRevolute(), and setupSpherical().
| void btMultiBody::calcAccelerationDeltasMultiDof | ( | const btScalar * | force, |
| btScalar * | output, | ||
| btAlignedObjectArray< btScalar > & | scratch_r, | ||
| btAlignedObjectArray< btVector3 > & | scratch_v ) const |
stepVelocitiesMultiDof is deprecated, use computeAccelerationsArticulatedBodyAlgorithmMultiDof instead
Definition at line 1394 of file btMultiBody.cpp.
References btMatrix3x3, btSpatialForceVector::btSpatialForceVector(), btVector3, btSpatialMotionVector::dot(), btSpatialMotionVector::getAngular(), btSpatialMotionVector::getLinear(), getNumLinks(), i, btSpatialTransformationMatrix::m_rotMat, btSpatialTransformationMatrix::m_trnVec, output, btAlignedObjectArray< T >::resize(), result, btSpatialForceVector::setZero(), btSpatialMotionVector::setZero(), btSpatialTransformationMatrix::transform(), btSpatialTransformationMatrix::transformInverse(), btSpatialTransformationMatrix::transformRotationOnly(), and Y.
|
virtual |
References calculateSerializeBufferSize().
| void btMultiBody::checkMotionAndSleepIfRequired | ( | btScalar | timestep | ) |
Definition at line 2001 of file btMultiBody.cpp.
References gDisableDeactivation, goToSleep(), i, and wakeUp().
| void btMultiBody::clearConstraintForces | ( | ) |
Definition at line 589 of file btMultiBody.cpp.
References getNumLinks(), and i.
| void btMultiBody::clearForcesAndTorques | ( | ) |
Definition at line 600 of file btMultiBody.cpp.
References getNumLinks(), and i.
| void btMultiBody::clearVelocities | ( | ) |
Definition at line 613 of file btMultiBody.cpp.
References getNumDofs(), and i.
Definition at line 560 of file btMultiBody.cpp.
References btMatrix3x3, btVector3, btMultibodyLink::getAxisBottom(), btMultibodyLink::getAxisTop(), getBaseOmega(), getBaseVel(), getJointVelMultiDof(), getLink(), getNumLinks(), getWorldToBaseRot(), i, btMultibodyLink::m_cachedRotParentToThis, btMultibodyLink::m_cachedRVector, btMultibodyLink::m_dofCount, btMultibodyLink::m_parent, quatRotate(), and spatialTransform().
Referenced by forwardKinematics().
| void btMultiBody::computeAccelerationsArticulatedBodyAlgorithmMultiDof | ( | btScalar | dt, |
| btAlignedObjectArray< btScalar > & | scratch_r, | ||
| btAlignedObjectArray< btVector3 > & | scratch_v, | ||
| btAlignedObjectArray< btMatrix3x3 > & | scratch_m, | ||
| bool | isConstraintPass, | ||
| bool | jointFeedbackInWorldSpace, | ||
| bool | jointFeedbackInJointFrame ) |
Definition at line 700 of file btMultiBody.cpp.
References btSpatialTransformationMatrix::Add, btSpatialForceVector::addAngular(), btSpatialForceVector::addLinear(), btSpatialForceVector::addVector(), applyDeltaVeeMultiDof(), btMatrix3x3, btVector3, btSpatialMotionVector::cross(), cross, D, btSpatialMotionVector::dot(), btMultibodyLink::ePlanar, btMultibodyLink::ePrismatic, btMultibodyLink::eRevolute, btMultibodyLink::eSpherical, btSpatialMotionVector::getAngular(), getBaseOmega(), getBaseVel(), getJointVelMultiDof(), btSpatialMotionVector::getLinear(), getNumLinks(), i, m_angularDamping, btSymmetricSpatialDyad::m_bottomLeftMat, m_jointFeedback, m_linearDamping, btSpatialTransformationMatrix::m_rotMat, btSymmetricSpatialDyad::m_topLeftMat, btSymmetricSpatialDyad::m_topRightMat, btSpatialTransformationMatrix::m_trnVec, output, btAlignedObjectArray< T >::resize(), result, safeNorm(), btSymmetricSpatialDyad::setMatrix(), btSpatialForceVector::setVector(), btSpatialMotionVector::setVector(), btSpatialForceVector::setZero(), btSpatialMotionVector::setZero(), SIMD_EPSILON, symmetricSpatialOuterProduct(), btSpatialTransformationMatrix::transform(), btSpatialTransformationMatrix::transformInverse(), btSpatialTransformationMatrix::transformInverseRotationOnly(), btSpatialTransformationMatrix::transformRotationOnly(), and Y.
| void btMultiBody::fillConstraintJacobianMultiDof | ( | int | link, |
| const btVector3 & | contact_point, | ||
| const btVector3 & | normal_ang, | ||
| const btVector3 & | normal_lin, | ||
| btScalar * | jac, | ||
| btAlignedObjectArray< btScalar > & | scratch_r, | ||
| btAlignedObjectArray< btVector3 > & | scratch_v, | ||
| btAlignedObjectArray< btMatrix3x3 > & | scratch_m ) const |
Definition at line 1847 of file btMultiBody.cpp.
References btAssert, btMatrix3x3, btVector3, cross, btMultibodyLink::ePlanar, btMultibodyLink::ePrismatic, btMultibodyLink::eRevolute, btMultibodyLink::eSpherical, getNumDofs(), getNumLinks(), i, l, btAlignedObjectArray< T >::resize(), and btAlignedObjectArray< T >::size().
Referenced by fillContactJacobianMultiDof().
| void fillContactJacobianMultiDof | ( | int | link, |
| const btVector3 & | contact_point, | ||
| const btVector3 & | normal, | ||
| btScalar * | jac, | ||
| btAlignedObjectArray< btScalar > & | scratch_r, | ||
| btAlignedObjectArray< btVector3 > & | scratch_v, | ||
| btAlignedObjectArray< btMatrix3x3 > & | scratch_m ) const |
Definition at line 474 of file btMultiBody.h.
References btVector3, fillConstraintJacobianMultiDof(), and fillContactJacobianMultiDof().
Referenced by fillContactJacobianMultiDof().
| void finalizeMultiDof | ( | ) |
References finalizeMultiDof().
Referenced by finalizeMultiDof(), and finalizeMultiDof().
| void forwardKinematics | ( | btAlignedObjectArray< btQuaternion > & | world_to_local, |
| btAlignedObjectArray< btVector3 > & | local_origin ) |
References btVector3, compTreeLinkVelocities(), forwardKinematics(), updateCollisionObjectInterpolationWorldTransforms(), and updateCollisionObjectWorldTransforms().
Referenced by forwardKinematics().
| btScalar getAngularDamping | ( | ) | const |
Definition at line 556 of file btMultiBody.h.
References getAngularDamping(), and m_angularDamping.
| btMultiBodyLinkCollider * getBaseCollider | ( | ) | const |
Definition at line 128 of file btMultiBody.h.
References getBaseCollider().
Referenced by getBaseCollider(), updateCollisionObjectInterpolationWorldTransforms(), and updateCollisionObjectWorldTransforms().
| const btVector3 & getBaseForce | ( | ) | const |
Definition at line 345 of file btMultiBody.h.
References btVector3, and getBaseForce().
Referenced by getBaseForce().
| const btVector3 & getBaseInertia | ( | ) | const |
Definition at line 170 of file btMultiBody.h.
References btVector3, and getBaseInertia().
Referenced by getBaseInertia().
| btScalar getBaseMass | ( | ) | const |
Definition at line 169 of file btMultiBody.h.
References getBaseMass().
Referenced by getBaseMass().
| const char * getBaseName | ( | ) | const |
Definition at line 632 of file btMultiBody.h.
References getBaseName().
Referenced by getBaseName().
| btVector3 getBaseOmega | ( | ) | const |
Definition at line 208 of file btMultiBody.h.
References btVector3, and getBaseOmega().
Referenced by compTreeLinkVelocities(), computeAccelerationsArticulatedBodyAlgorithmMultiDof(), and getBaseOmega().
| const btVector3 & getBasePos | ( | ) | const |
Definition at line 185 of file btMultiBody.h.
References btVector3, and getBasePos().
Referenced by getBasePos(), getBaseWorldTransform(), localPosToWorld(), updateCollisionObjectWorldTransforms(), and worldPosToLocal().
| const btVector3 & getBaseTorque | ( | ) | const |
Definition at line 346 of file btMultiBody.h.
References btVector3, and getBaseTorque().
Referenced by getBaseTorque().
| const btVector3 getBaseVel | ( | ) | const |
Definition at line 189 of file btMultiBody.h.
References btVector3, and getBaseVel().
Referenced by compTreeLinkVelocities(), computeAccelerationsArticulatedBodyAlgorithmMultiDof(), and getBaseVel().
| btTransform getBaseWorldTransform | ( | ) | const |
Definition at line 222 of file btMultiBody.h.
References btTransform, getBasePos(), getBaseWorldTransform(), getWorldToBaseRot(), and inverse.
Referenced by getBaseWorldTransform().
| bool getCanSleep | ( | ) | const |
Definition at line 504 of file btMultiBody.h.
References getCanSleep().
Referenced by getCanSleep().
| bool getCanWakeup | ( | ) | const |
Definition at line 509 of file btMultiBody.h.
References getCanWakeup().
Referenced by getCanWakeup().
| int getCompanionId | ( | ) | const |
Definition at line 533 of file btMultiBody.h.
References getCompanionId(), and m_companionId.
| const btScalar * getDeltaVelocityVector | ( | ) | const |
Definition at line 277 of file btMultiBody.h.
References getDeltaVelocityVector().
Referenced by getDeltaVelocityVector().
| const btVector3 & getInterpolateBasePos | ( | ) | const |
Definition at line 198 of file btMultiBody.h.
References btVector3, and getInterpolateBasePos().
Referenced by getInterpolateBasePos(), and updateCollisionObjectInterpolationWorldTransforms().
| const btQuaternion & btMultiBody::getInterpolateParentToLocalRot | ( | int | i | ) | const |
Definition at line 461 of file btMultiBody.cpp.
References i.
Referenced by updateCollisionObjectInterpolationWorldTransforms().
| const btVector3 & btMultiBody::getInterpolateRVector | ( | int | i | ) | const |
Definition at line 456 of file btMultiBody.cpp.
Referenced by updateCollisionObjectInterpolationWorldTransforms().
| const btQuaternion & getInterpolateWorldToBaseRot | ( | ) | const |
Definition at line 202 of file btMultiBody.h.
References getInterpolateWorldToBaseRot().
Referenced by getInterpolateWorldToBaseRot(), and updateCollisionObjectInterpolationWorldTransforms().
| btScalar btMultiBody::getJointPos | ( | int | i | ) | const |
Definition at line 374 of file btMultiBody.cpp.
References i.
| const btScalar * getJointPosMultiDof | ( | int | i | ) |
Definition at line 384 of file btMultiBody.cpp.
References i.
| btScalar btMultiBody::getJointTorque | ( | int | i | ) | const |
Definition at line 666 of file btMultiBody.cpp.
References i.
| btScalar * btMultiBody::getJointTorqueMultiDof | ( | int | i | ) |
Definition at line 671 of file btMultiBody.cpp.
References i.
| btScalar btMultiBody::getJointVel | ( | int | i | ) | const |
Definition at line 379 of file btMultiBody.cpp.
References i.
| const btScalar * getJointVelMultiDof | ( | int | i | ) |
Definition at line 389 of file btMultiBody.cpp.
References i.
Referenced by compTreeLinkVelocities(), computeAccelerationsArticulatedBodyAlgorithmMultiDof(), predictPositionsMultiDof(), and stepPositionsMultiDof().
| btScalar getLinearDamping | ( | ) | const |
Definition at line 548 of file btMultiBody.h.
References getLinearDamping(), and m_linearDamping.
| btMultibodyLink & getLink | ( | int | index | ) | const |
Definition at line 114 of file btMultiBody.h.
References getLink().
Referenced by btMultiBodyJointLimitConstraint::btMultiBodyJointLimitConstraint(), btMultiBodyJointMotor::btMultiBodyJointMotor(), btMultiBodyJointMotor::btMultiBodyJointMotor(), btMultiBodySphericalJointMotor::btMultiBodySphericalJointMotor(), compTreeLinkVelocities(), getLink(), getLinkCollider(), updateCollisionObjectInterpolationWorldTransforms(), and updateCollisionObjectWorldTransforms().
| btMultiBodyLinkCollider * getLinkCollider | ( | int | index | ) | const |
Definition at line 137 of file btMultiBody.h.
References getLink(), getLinkCollider(), getNumLinks(), and btMultibodyLink::m_collider.
Referenced by getLinkCollider().
| const btVector3 & btMultiBody::getLinkForce | ( | int | i | ) | const |
Definition at line 656 of file btMultiBody.cpp.
| const btVector3 & btMultiBody::getLinkInertia | ( | int | i | ) | const |
Definition at line 369 of file btMultiBody.cpp.
| btScalar btMultiBody::getLinkMass | ( | int | i | ) | const |
Definition at line 364 of file btMultiBody.cpp.
References i.
| const btVector3 & btMultiBody::getLinkTorque | ( | int | i | ) | const |
Definition at line 661 of file btMultiBody.cpp.
| btScalar getMaxAppliedImpulse | ( | ) | const |
Definition at line 582 of file btMultiBody.h.
References getMaxAppliedImpulse().
Referenced by getMaxAppliedImpulse().
| btScalar getMaxCoordinateVelocity | ( | ) | const |
Definition at line 573 of file btMultiBody.h.
References getMaxCoordinateVelocity().
Referenced by getMaxCoordinateVelocity().
| int getNumDofs | ( | ) | const |
Definition at line 167 of file btMultiBody.h.
References getNumDofs().
Referenced by applyDeltaSplitVeeMultiDof(), applyDeltaVeeMultiDof(), applyDeltaVeeMultiDof2(), clearVelocities(), fillConstraintJacobianMultiDof(), getNumDofs(), processDeltaVeeMultiDof2(), and substractSplitV().
| int getNumLinks | ( | ) | const |
Definition at line 166 of file btMultiBody.h.
References getNumLinks().
Referenced by calcAccelerationDeltasMultiDof(), clearConstraintForces(), clearForcesAndTorques(), compTreeLinkVelocities(), computeAccelerationsArticulatedBodyAlgorithmMultiDof(), fillConstraintJacobianMultiDof(), getLinkCollider(), getNumLinks(), predictPositionsMultiDof(), stepPositionsMultiDof(), updateCollisionObjectInterpolationWorldTransforms(), and updateCollisionObjectWorldTransforms().
| int getNumPosVars | ( | ) | const |
Definition at line 168 of file btMultiBody.h.
References getNumPosVars().
Referenced by getNumPosVars().
| int btMultiBody::getParent | ( | int | link_num | ) | const |
Definition at line 359 of file btMultiBody.cpp.
Referenced by gather_objects_paths(), localDirToWorld(), localPosToWorld(), updateCollisionObjectInterpolationWorldTransforms(), updateCollisionObjectWorldTransforms(), visit_object(), worldDirToLocal(), and worldPosToLocal().
| const btQuaternion & btMultiBody::getParentToLocalRot | ( | int | i | ) | const |
Definition at line 451 of file btMultiBody.cpp.
References i.
Referenced by localDirToWorld(), localPosToWorld(), updateCollisionObjectWorldTransforms(), worldDirToLocal(), and worldPosToLocal().
| const btVector3 & btMultiBody::getRVector | ( | int | i | ) | const |
Definition at line 446 of file btMultiBody.cpp.
Referenced by localPosToWorld(), updateCollisionObjectWorldTransforms(), and worldPosToLocal().
| const btScalar * getSplitVelocityVector | ( | ) | const |
Definition at line 282 of file btMultiBody.h.
References getSplitVelocityVector().
Referenced by getSplitVelocityVector().
| bool getUseGyroTerm | ( | ) | const |
Definition at line 565 of file btMultiBody.h.
References getUseGyroTerm().
Referenced by getUseGyroTerm().
| int getUserIndex | ( | ) | const |
Definition at line 648 of file btMultiBody.h.
References getUserIndex(), and m_userIndex.
| int getUserIndex2 | ( | ) | const |
Definition at line 653 of file btMultiBody.h.
References getUserIndex2(), and m_userIndex2.
| void * getUserPointer | ( | ) | const |
users can point to their objects, userPointer is not used by Bullet
Definition at line 643 of file btMultiBody.h.
References getUserPointer(), and m_userObjectPointer.
| const btScalar * getVelocityVector | ( | ) | const |
Definition at line 272 of file btMultiBody.h.
References getVelocityVector().
Referenced by getVelocityVector().
| const btQuaternion & getWorldToBaseRot | ( | ) | const |
Definition at line 193 of file btMultiBody.h.
References getWorldToBaseRot().
Referenced by compTreeLinkVelocities(), getBaseWorldTransform(), getWorldToBaseRot(), localDirToWorld(), localPosToWorld(), updateCollisionObjectWorldTransforms(), worldDirToLocal(), and worldPosToLocal().
| void btMultiBody::goToSleep | ( | ) |
Definition at line 1996 of file btMultiBody.cpp.
Referenced by checkMotionAndSleepIfRequired().
| bool hasFixedBase | ( | ) | const |
Definition at line 523 of file btMultiBody.h.
References hasFixedBase().
Referenced by hasFixedBase().
| bool hasSelfCollision | ( | ) | const |
Definition at line 594 of file btMultiBody.h.
References hasSelfCollision().
Referenced by hasSelfCollision(), and setHasSelfCollision().
| bool internalNeedsJointFeedback | ( | ) | const |
Definition at line 616 of file btMultiBody.h.
References internalNeedsJointFeedback().
Referenced by internalNeedsJointFeedback().
| bool isAwake | ( | ) | const |
| bool isPosUpdated | ( | ) | const |
Definition at line 606 of file btMultiBody.h.
References isPosUpdated().
Referenced by isPosUpdated().
| bool isUsingGlobalVelocities | ( | ) | const |
Definition at line 604 of file btMultiBody.h.
References isUsingGlobalVelocities().
Referenced by isUsingGlobalVelocities().
| bool isUsingRK4Integration | ( | ) | const |
Definition at line 602 of file btMultiBody.h.
References isUsingRK4Integration().
Referenced by isUsingRK4Integration().
Definition at line 512 of file btMultiBody.cpp.
References btAssert, btVector3, getParent(), getParentToLocalRot(), getWorldToBaseRot(), i, inverse, quatRotate(), result, and SIMD_INFINITY.
Referenced by localFrameToWorld().
| btMatrix3x3 btMultiBody::localFrameToWorld | ( | int | i, |
| const btMatrix3x3 & | local_frame ) const |
Definition at line 550 of file btMultiBody.cpp.
References btMatrix3x3, btVector3, i, localDirToWorld(), and result.
Definition at line 466 of file btMultiBody.cpp.
References btAssert, btVector3, getBasePos(), getParent(), getParentToLocalRot(), getRVector(), getWorldToBaseRot(), i, inverse, quatRotate(), result, and SIMD_INFINITY.
| void btMultiBody::predictPositionsMultiDof | ( | btScalar | dt | ) |
baseBody => quat is alibi and omega is local coor
Definition at line 1552 of file btMultiBody.cpp.
References ANGULAR_MOTION_THRESHOLD, btCos(), btQuaternion::btQuaternion(), btSin(), btVector3, btMultibodyLink::ePlanar, btMultibodyLink::ePrismatic, btMultibodyLink::eRevolute, btMultibodyLink::eSpherical, getJointVelMultiDof(), getNumLinks(), i, btQuaternion::normalize(), operator()(), quatRotate(), and SIMD_HALF_PI.
| void processDeltaVeeMultiDof2 | ( | ) |
Definition at line 425 of file btMultiBody.h.
References applyDeltaVeeMultiDof(), getNumDofs(), and processDeltaVeeMultiDof2().
Referenced by processDeltaVeeMultiDof2().
|
virtual |
fills the dataBuffer and returns the struct name (and 0 on failure)
References serialize().
| void setAngularDamping | ( | btScalar | damp | ) |
Definition at line 560 of file btMultiBody.h.
References m_angularDamping, and setAngularDamping().
| void setBaseCollider | ( | btMultiBodyLinkCollider * | collider | ) |
Definition at line 124 of file btMultiBody.h.
References setBaseCollider().
Referenced by setBaseCollider().
| void setBaseInertia | ( | const btVector3 & | inertia | ) |
Definition at line 179 of file btMultiBody.h.
References btVector3, and setBaseInertia().
Referenced by setBaseInertia().
| void setBaseMass | ( | btScalar | mass | ) |
Definition at line 178 of file btMultiBody.h.
References setBaseMass().
Referenced by setBaseMass().
| void setBaseName | ( | const char * | name | ) |
memory of setBaseName needs to be manager by user
Definition at line 637 of file btMultiBody.h.
References setBaseName().
Referenced by setBaseName().
| void setBaseOmega | ( | const btVector3 & | omega | ) |
Definition at line 241 of file btMultiBody.h.
References btVector3, and setBaseOmega().
Referenced by setBaseOmega().
| void setBasePos | ( | const btVector3 & | pos | ) |
Definition at line 210 of file btMultiBody.h.
References btVector3, and setBasePos().
Referenced by setBasePos(), and setBaseWorldTransform().
| void setBaseVel | ( | const btVector3 & | vel | ) |
Definition at line 230 of file btMultiBody.h.
References btVector3, and setBaseVel().
Referenced by setBaseVel().
| void setBaseWorldTransform | ( | const btTransform & | tr | ) |
Definition at line 216 of file btMultiBody.h.
References btTransform, setBasePos(), setBaseWorldTransform(), and setWorldToBaseRot().
Referenced by setBaseWorldTransform().
| void setCanSleep | ( | bool | canSleep | ) |
Definition at line 496 of file btMultiBody.h.
References setCanSleep().
Referenced by setCanSleep().
| void setCanWakeup | ( | bool | canWakeup | ) |
Definition at line 514 of file btMultiBody.h.
References setCanWakeup().
Referenced by setCanWakeup().
| void setCompanionId | ( | int | id | ) |
Definition at line 537 of file btMultiBody.h.
References m_companionId, and setCompanionId().
| void setFixedBase | ( | bool | fixedBase | ) |
Definition at line 528 of file btMultiBody.h.
References setFixedBase().
Referenced by setFixedBase().
| void setHasSelfCollision | ( | bool | hasSelfCollision | ) |
Definition at line 590 of file btMultiBody.h.
References hasSelfCollision(), and setHasSelfCollision().
Referenced by setHasSelfCollision().
| void btMultiBody::setJointPos | ( | int | i, |
| btScalar | q ) |
Definition at line 404 of file btMultiBody.cpp.
References i.
| void btMultiBody::setJointPosMultiDof | ( | int | i, |
| const double * | q ) |
Definition at line 411 of file btMultiBody.cpp.
References i.
| void btMultiBody::setJointPosMultiDof | ( | int | i, |
| const float * | q ) |
Definition at line 419 of file btMultiBody.cpp.
References i.
| void btMultiBody::setJointVel | ( | int | i, |
| btScalar | qdot ) |
Definition at line 429 of file btMultiBody.cpp.
References i.
| void btMultiBody::setJointVelMultiDof | ( | int | i, |
| const double * | qdot ) |
Definition at line 434 of file btMultiBody.cpp.
References i.
| void btMultiBody::setJointVelMultiDof | ( | int | i, |
| const float * | qdot ) |
Definition at line 440 of file btMultiBody.cpp.
References i.
| void setLinearDamping | ( | btScalar | damp | ) |
Definition at line 552 of file btMultiBody.h.
References m_linearDamping, and setLinearDamping().
| void setMaxAppliedImpulse | ( | btScalar | maxImp | ) |
Definition at line 586 of file btMultiBody.h.
References setMaxAppliedImpulse().
Referenced by setMaxAppliedImpulse().
| void setMaxCoordinateVelocity | ( | btScalar | maxVel | ) |
Definition at line 577 of file btMultiBody.h.
References setMaxCoordinateVelocity().
Referenced by setMaxCoordinateVelocity().
| void setNumLinks | ( | int | numLinks | ) |
Definition at line 543 of file btMultiBody.h.
References setNumLinks().
Referenced by setNumLinks().
| void setPosUpdated | ( | bool | updated | ) |
Definition at line 610 of file btMultiBody.h.
References setPosUpdated().
Referenced by setPosUpdated().
| void btMultiBody::setupFixed | ( | int | i, |
| btScalar | mass, | ||
| const btVector3 & | inertia, | ||
| int | parent, | ||
| const btQuaternion & | rotParentToThis, | ||
| const btVector3 & | parentComToThisPivotOffset, | ||
| const btVector3 & | thisPivotToThisComOffset, | ||
| bool | deprecatedDisableParentCollision = true ) |
Definition at line 150 of file btMultiBody.cpp.
References BT_MULTIBODYLINKFLAGS_DISABLE_PARENT_COLLISION, btVector3, btMultibodyLink::eFixed, and i.
Referenced by btMultiBody().
| void btMultiBody::setupPlanar | ( | int | i, |
| btScalar | mass, | ||
| const btVector3 & | inertia, | ||
| int | parent, | ||
| const btQuaternion & | rotParentToThis, | ||
| const btVector3 & | rotationAxis, | ||
| const btVector3 & | parentComToThisComOffset, | ||
| bool | disableParentCollision = false ) |
Definition at line 292 of file btMultiBody.cpp.
References BT_MULTIBODYLINKFLAGS_DISABLE_PARENT_COLLISION, btVector3, btMultibodyLink::ePlanar, i, and normalized().
Referenced by btMultiBody().
| void btMultiBody::setupPrismatic | ( | int | i, |
| btScalar | mass, | ||
| const btVector3 & | inertia, | ||
| int | parent, | ||
| const btQuaternion & | rotParentToThis, | ||
| const btVector3 & | jointAxis, | ||
| const btVector3 & | parentComToThisPivotOffset, | ||
| const btVector3 & | thisPivotToThisComOffset, | ||
| bool | disableParentCollision ) |
Definition at line 178 of file btMultiBody.cpp.
References BT_MULTIBODYLINKFLAGS_DISABLE_PARENT_COLLISION, btVector3, btMultibodyLink::ePrismatic, and i.
Referenced by btMultiBody().
| void btMultiBody::setupRevolute | ( | int | i, |
| btScalar | mass, | ||
| const btVector3 & | inertia, | ||
| int | parentIndex, | ||
| const btQuaternion & | rotParentToThis, | ||
| const btVector3 & | jointAxis, | ||
| const btVector3 & | parentComToThisPivotOffset, | ||
| const btVector3 & | thisPivotToThisComOffset, | ||
| bool | disableParentCollision = false ) |
Definition at line 216 of file btMultiBody.cpp.
References BT_MULTIBODYLINKFLAGS_DISABLE_PARENT_COLLISION, btVector3, btMultibodyLink::eRevolute, and i.
Referenced by btMultiBody().
| void btMultiBody::setupSpherical | ( | int | i, |
| btScalar | mass, | ||
| const btVector3 & | inertia, | ||
| int | parent, | ||
| const btQuaternion & | rotParentToThis, | ||
| const btVector3 & | parentComToThisPivotOffset, | ||
| const btVector3 & | thisPivotToThisComOffset, | ||
| bool | disableParentCollision = false ) |
Definition at line 252 of file btMultiBody.cpp.
References BT_MULTIBODYLINKFLAGS_DISABLE_PARENT_COLLISION, btVector3, cross, btMultibodyLink::eSpherical, and i.
Referenced by btMultiBody().
| void setUseGyroTerm | ( | bool | useGyro | ) |
Definition at line 569 of file btMultiBody.h.
References setUseGyroTerm().
Referenced by setUseGyroTerm().
| void setUserIndex | ( | int | index | ) |
users can point to their objects, userPointer is not used by Bullet
Definition at line 664 of file btMultiBody.h.
References m_userIndex, and setUserIndex().
| void setUserIndex2 | ( | int | index | ) |
Definition at line 669 of file btMultiBody.h.
References m_userIndex2, and setUserIndex2().
| void setUserPointer | ( | void * | userPointer | ) |
users can point to their objects, userPointer is not used by Bullet
Definition at line 658 of file btMultiBody.h.
References m_userObjectPointer, and setUserPointer().
| void setWorldToBaseRot | ( | const btQuaternion & | rot | ) |
Definition at line 236 of file btMultiBody.h.
References rot, and setWorldToBaseRot().
Referenced by setBaseWorldTransform(), and setWorldToBaseRot().
|
static |
Definition at line 40 of file btMultiBody.cpp.
References btMatrix3x3, and btVector3.
Referenced by compTreeLinkVelocities().
baseBody => quat is alibi and omega is local coor
Definition at line 1705 of file btMultiBody.cpp.
References ANGULAR_MOTION_THRESHOLD, btCos(), btQuaternion::btQuaternion(), btSin(), btVector3, btMultibodyLink::ePlanar, btMultibodyLink::ePrismatic, btMultibodyLink::eRevolute, btMultibodyLink::eSpherical, getJointVelMultiDof(), getNumLinks(), i, btQuaternion::normalize(), operator()(), quatRotate(), and SIMD_HALF_PI.
| void substractSplitV | ( | ) |
Definition at line 416 of file btMultiBody.h.
References applyDeltaVeeMultiDof(), getNumDofs(), and substractSplitV().
Referenced by substractSplitV().
| void btMultiBody::updateCollisionObjectInterpolationWorldTransforms | ( | btAlignedObjectArray< btQuaternion > & | world_to_local, |
| btAlignedObjectArray< btVector3 > & | local_origin ) |
Definition at line 2135 of file btMultiBody.cpp.
References btAssert, btQuaternion::btQuaternion(), btTransform, btVector3, getBaseCollider(), getInterpolateBasePos(), getInterpolateParentToLocalRot(), getInterpolateRVector(), getInterpolateWorldToBaseRot(), getLink(), getNumLinks(), getParent(), inverse, btMultibodyLink::m_collider, btMultiBodyLinkCollider::m_link, quatRotate(), and btAlignedObjectArray< T >::resize().
Referenced by forwardKinematics().
| void btMultiBody::updateCollisionObjectWorldTransforms | ( | btAlignedObjectArray< btQuaternion > & | world_to_local, |
| btAlignedObjectArray< btVector3 > & | local_origin ) |
Definition at line 2082 of file btMultiBody.cpp.
References btAssert, btQuaternion::btQuaternion(), btTransform, btVector3, getBaseCollider(), getBasePos(), getLink(), getNumLinks(), getParent(), getParentToLocalRot(), getRVector(), getWorldToBaseRot(), inverse, btMultibodyLink::m_collider, btMultiBodyLinkCollider::m_link, quatRotate(), and btAlignedObjectArray< T >::resize().
Referenced by forwardKinematics().
| void useGlobalVelocities | ( | bool | use | ) |
Definition at line 603 of file btMultiBody.h.
References useGlobalVelocities().
Referenced by useGlobalVelocities().
| void useRK4Integration | ( | bool | use | ) |
Definition at line 601 of file btMultiBody.h.
References useRK4Integration().
Referenced by useRK4Integration().
| void btMultiBody::wakeUp | ( | ) |
Definition at line 1990 of file btMultiBody.cpp.
Referenced by checkMotionAndSleepIfRequired().
Definition at line 531 of file btMultiBody.cpp.
References btAssert, btVector3, getParent(), getParentToLocalRot(), getWorldToBaseRot(), i, quatRotate(), SIMD_INFINITY, and worldDirToLocal().
Referenced by worldDirToLocal().
Definition at line 491 of file btMultiBody.cpp.
References btAssert, btVector3, getBasePos(), getParent(), getParentToLocalRot(), getRVector(), getWorldToBaseRot(), i, quatRotate(), SIMD_INFINITY, and worldPosToLocal().
Referenced by worldPosToLocal().
|
virtual |
Definition at line 146 of file btMultiBody.cpp.
| btMultiBody::btMultiBody |
Definition at line 50 of file btMultiBody.h.
Referenced by btMultiBodyDynamicsWorld::addMultiBody(), addMultiBodyFrictionConstraint(), addMultiBodySpinningFrictionConstraint(), addMultiBodyTorsionalFrictionConstraint(), btMultiBodyDynamicsWorld::applyGravity(), btDeformableMultiBodyDynamicsWorld::applyRigidBodyGravity(), BT_DECLARE_ALIGNED_ALLOCATOR(), btMultiBody(), btMultiBodyConstraint(), btMultiBodyFixedConstraint::btMultiBodyFixedConstraint(), btMultiBodyFixedConstraint::btMultiBodyFixedConstraint(), btMultiBodyGearConstraint::btMultiBodyGearConstraint(), btMultiBodyJointLimitConstraint::btMultiBodyJointLimitConstraint(), btMultiBodyJointMotor::btMultiBodyJointMotor(), btMultiBodyJointMotor::btMultiBodyJointMotor(), btMultiBodyLinkCollider::btMultiBodyLinkCollider(), btMultiBodyPoint2Point(), btMultiBodyPoint2Point(), btMultiBodySliderConstraint::btMultiBodySliderConstraint(), btMultiBodySliderConstraint::btMultiBodySliderConstraint(), btMultiBodySphericalJointMotor::btMultiBodySphericalJointMotor(), btMultiBodyDynamicsWorld::calculateSimulationIslands(), btDeformableMultiBodyDynamicsWorld::clearGravity(), btMultiBodyDynamicsWorld::clearMultiBodyConstraintForces(), btMultiBodyDynamicsWorld::clearMultiBodyForces(), computeConstraintMatrixDiagElementMultiBody(), computeConstraintMatrixOffDiagElementMultiBody(), convertMultiBodyContact(), btMultiBodyDynamicsWorld::debugDrawWorld(), fillMultiBodyConstraint(), btMultiBodyDynamicsWorld::forwardKinematics(), btMultiBodyDynamicsWorld::getMultiBody(), btMultiBodyDynamicsWorld::getMultiBody(), getMultiBodyA(), getMultiBodyB(), btMultiBodyDynamicsWorld::integrateMultiBodyTransforms(), btMultiBodyDynamicsWorld::predictMultiBodyTransforms(), btMultiBodyDynamicsWorld::removeMultiBody(), btMultiBodyDynamicsWorld::serializeMultiBodies(), setupMultiBodyContactConstraint(), setupMultiBodyTorsionalFrictionConstraint(), btDeformableMultiBodyDynamicsWorld::solveContactConstraints(), btMultiBodyDynamicsWorld::solveExternalForces(), btMultiBodyMLCPConstraintSolver::solveGroupCacheFriendlyIterations(), btMultiBodyDynamicsWorld::solveInternalConstraints(), and btMultiBodyDynamicsWorld::updateActivationState().