24#ifndef GIMPACT_MASS_UTIL_H
25#define GIMPACT_MASS_UTIL_H
41 btScalar ix = rotatedTensor[0][0] * (y2 + z2);
42 btScalar iy = rotatedTensor[1][1] * (x2 + z2);
43 btScalar iz = rotatedTensor[2][2] * (x2 + y2);
45 return btVector3(source_inertia[0] + ix, source_inertia[1] + iy, source_inertia[2] + iz);
53 return btVector3(mass * (y2 + z2), mass * (x2 + z2), mass * (x2 + y2));
btVector3 gim_get_point_inertia(const btVector3 &point, btScalar mass)
btVector3 gim_inertia_add_transformed(const btVector3 &source_inertia, const btVector3 &added_inertia, const btTransform &transform)
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
#define SIMD_FORCE_INLINE
The btMatrix3x3 class implements a 3x3 rotation matrix, to perform linear algebra in combination with...
btMatrix3x3 transpose() const
Return the transpose of the matrix.
btMatrix3x3 scaled(const btVector3 &s) const
Create a scaled copy of the matrix.
btVector3 can be used to represent 3D points and vectors.