| Bullet Collision Detection & Physics Library
    | 
 
 
 
Go to the documentation of this file.
   15 #ifndef BT_TRANSFORM_UTIL_H 
   16 #define BT_TRANSFORM_UTIL_H 
   19 #define ANGULAR_MOTION_THRESHOLD btScalar(0.5) * SIMD_HALF_PI 
   24                                          supportDir.
y() < 
btScalar(0.0) ? -halfExtents.
y() : halfExtents.
y(),
 
   25                                          supportDir.
z() < 
btScalar(0.0) ? -halfExtents.
z() : halfExtents.
z());
 
   36 #ifdef QUATERNION_DERIVATIVE 
   38                 predictedOrn += (angvel * predictedOrn) * (timeStep * 
btScalar(0.5));
 
   61                         axis = angvel * (
btScalar(0.5) * timeStep - (timeStep * timeStep * timeStep) * (
btScalar(0.020833333333)) * fAngle * fAngle);
 
   66                         axis = angvel * (
btSin(
btScalar(0.5) * fAngle * timeStep) / fAngle);
 
   86                 linVel = (pos1 - pos0) / timeStep;
 
   92                         angVel = axis * angle / timeStep;
 
  121                 angVel = axis * angle / timeStep;
 
  182                         btVector3 linVelA, angVelA, linVelB, angVelB;
 
  186                         btVector3 relLinVel = (linVelB - linVelA);
 
  188                         if (relLinVelocLength < 0.f)
 
  190                                 relLinVelocLength = 0.f;
 
  193                         btScalar projectedMotion = maxAngularProjectedVelocity + relLinVelocLength;
 
  223 #endif  //BT_TRANSFORM_UTIL_H 
  
const btScalar & y() const
Return the y value.
The btQuaternion implements quaternion to perform linear algebra rotations in combination with btMatr...
btScalar length() const
Return the length of the vector.
btScalar getAngle() const
Return the angle [0, 2Pi] of rotation represented by this quaternion.
void setValue(const btScalar &_x, const btScalar &_y, const btScalar &_z)
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
btMatrix3x3 inverse() const
Return the inverse of the matrix.
btQuaternion inverse() const
Return the inverse of this quaternion.
btScalar dot(const btVector3 &v) const
Return the dot product.
btQuaternion & normalize()
Normalize the quaternion Such that x^2 + y^2 + z^2 +w^2 = 1.
btQuaternion & safeNormalize()
btScalar length2() const
Return the length squared of the quaternion.
const btScalar & y() const
Return the y value.
btConvexSeparatingDistanceUtil(btScalar boundingRadiusA, btScalar boundingRadiusB)
btScalar getConservativeSeparatingDistance()
btScalar m_boundingRadiusA
btScalar btSin(btScalar x)
btQuaternion nearest(const btQuaternion &qd) const
btScalar btCos(btScalar x)
The btMatrix3x3 class implements a 3x3 rotation matrix, to perform linear algebra in combination with...
The btConvexSeparatingDistanceUtil can help speed up convex collision detection by conservatively upd...
btVector3 can be used to represent 3D points and vectors.
btScalar m_boundingRadiusB
void updateSeparatingDistance(const btTransform &transA, const btTransform &transB)
const btScalar & x() const
Return the x value.
#define SIMD_FORCE_INLINE
btScalar m_separatingDistance
const btScalar & x() const
Return the x value.
void getRotation(btQuaternion &q) const
Get the matrix represented as a quaternion.
void initSeparatingDistance(const btVector3 &separatingVector, btScalar separatingDistance, const btTransform &transA, const btTransform &transB)
const btScalar & z() const
Return the z value.
btVector3 m_separatingNormal
btScalar btSqrt(btScalar y)
const btScalar & z() const
Return the z value.
btScalar length2() const
Return the length of the vector squared.