10.08.2013 Views

thesis - Computer Graphics Group - Charles University - Univerzita ...

thesis - Computer Graphics Group - Charles University - Univerzita ...

thesis - Computer Graphics Group - Charles University - Univerzita ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

5.1. CONCEPTS 39<br />

(this is the length of the circle arc swept by p(t) per second, hence the velocity magnitude). The direction of<br />

˙p(t) would have to be perpendicular to both ω(t) and r(t) and due to the counter-clockwise convention would<br />

have to equal<br />

ω(t)×r(t)<br />

. Therefore, combining the two conditions on the velocity magnitude and the direction,<br />

ω(t)×r(t)<br />

˙p(t) = (ω(t) · r(t) · sin(α)) · ω(t)×r(t)<br />

ω(t)×r(t) = ω(t) × r(t). If v(t) = 0 and angular velocity was still constant, then<br />

the trajectory of p(t) would no longer correspond to a circle, but the trajectory of r(t) would. Hence we could write<br />

that ˙ r(t) = ω(t) × r(t). Finally, noting that the appropriate magnitude of r(t) was derived from the instantaneous<br />

ω(t), we can conclude that this equation holds even if the angular velocity is not constant.<br />

In the previous paragraph we have shown that ˙ r(t) = ω(t) × r(t) for vectors r(t) attached to<br />

the rigid body’s center of mass. This time, we will assert that the same equation holds for vectors<br />

r(t) attached to arbitrary points on the rigid body. If r(t) is a world space vector attached to a<br />

world space point p(t) of a rigid body, then a(t) = p(t) and b(t) = p(t) + r(t) are the world space<br />

positions of the origin and tip of r(t), r(t) = b(t) − a(t) and ˙ r(t) equals<br />

˙r(t) = ∂<br />

∂t b(t) − ∂<br />

a(t) = ω(t) × r(t), (5.5)<br />

∂t<br />

as can be verified by evaluating equation (5.4) for points a(t) and b(t).<br />

We will now use this equation to derive a formula for ∂<br />

∂t R(t) = ˙ R(t). R(t) can be writ-<br />

ten in a block fashion as R(t) = (rx(t), ry(t), rz(t)) and so ˙ R(t) = ( ˙ rx(t), ˙ ry(t), ˙ rz(t)). Since<br />

rx(t), ry(t), rz(t) are the body space axes expressed in the world coordinates and the axes are attached<br />

to the rigid body’s center of mass, we get that ˙ R(t) = (ω(t)×rx(t), ω(t)×ry(t), ω(t)×rz(t)).<br />

If we define matrix a ∗ as<br />

a ∗ ⎛<br />

⎞<br />

0 −az ay<br />

= ⎝ az 0 −ax ⎠<br />

−ay ax 0<br />

then a × b can be expressed in the form of matrix multiplication as a × b = a ∗ · b, therefore<br />

˙R(t) = (ω(t) ∗ · rx(t), ω(t) ∗ · ry(t), ω(t) ∗ · rz(t)), finally obtaining<br />

5.1.4 Force and Torque<br />

˙R(t) = ω(t) ∗ · R(t). (5.6)<br />

When we were working with particle systems we tracked directions and magnitudes of forces<br />

exerted on the particles ( F total<br />

i (t) vectors), but we did not care about the points of application,<br />

because they always coincided with the particle positions. The only effect a force exerted on<br />

a particle could produce was a translation. However since rigid bodies have volumes and can<br />

rotate, we need know not only what the direction and magnitude of the exerted force is, but also<br />

the point of its application so that both body translation and rotation could be affected by the<br />

force.<br />

We will conceptually work with a rigid body that consists of N particles constrained to remain<br />

at the same relative positions in the body space. Particle positions in the body space will be<br />

fixed and characterized by vectors r b i , 1 ≤ i ≤ N, their world space positions will be given by<br />

ri(t) = R(t) · r b i + x(t).<br />

To simplify further derivations we will assume that the points of force application coincide<br />

with the positions of particles2 the rigid body is made of. This will allow to characterize the force<br />

distribution over the volume of the body by a set of world space vectors F total<br />

i (t), where F total<br />

i (t)<br />

denotes the total force exerted at the rigid body’s particle i, at the world space position ri(t).<br />

2 We can always think that there happens to be a particle at the given world space position so that forces could<br />

act at arbitrary points in the world space.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!