Game Development Reference
In-Depth Information
(
)
(
)
 
=+
2
m
rsE
+
m
s
2
E
kk
3
k
3
k
k
(
)
(
)
 
r
s
s
r
s
s
.
(14.98)
m
m
m
kk
kk
k
k
k
k
Now, if the origin of the coordinate system coincides with the center of mass,
then the summation
k r is equal to the point 0, 0, 0 . This allows us to make
a tremendous simplification because all of the terms in Equation (14.98) contain-
ing this summation vanish. We therefore can use the formula
kk
(
)
 
′ =+
ms
2
Ess
−⊗
(14.99)
3
to transform an inertia tensor from a coordinate system in which the center of
mass lies at the origin to another coordinate system in which the new origin lies
at the point s in the original coordinate system. Note that the sign of s does not
matter because it is squared in both terms where it appears in Equation (14.99). A
translation by a certain distance in one direction produces the same inertia tensor
as a translation by the same distance in the opposite direction.
It's important to understand that Equation (14.99) can only be applied once
to an inertia tensor in order to move it away from the center of mass. After the
inertia tensor has been moved, it no longer uses a coordinate system in which the
origin coincides with the center of mass, but that condition must be true for
Equation (14.99) to be valid. However, it is possible to recover the inertia tensor
from the offset inertia tensor
if the vector s is known, once again allowing
Equation (14.99) to be used to perform a new offset.
Example 14.6. Determine the inertia tensor for an axis-aligned box of constant
density ρ in a coordinate system where the box's center of mass lies at the
origin.
Solution. We already calculated the inertia tensor for a box in Example 14.4, but
it was in a coordinate system where the origin coincided with one of the corners
of the box. We can treat this as the transformed inertia tensor
in Equation
(14.99) and recover the inertia tensor about the center of mass by solving for
with an offset
=
,,
. This gives us
s
a bc
222