Homework VI

Figure Animation


1.0 Abstract

Base on previous works, we try to create a human-like figure, and do some animations on it.

2.0 Idea of the codes

Hierarchy Data Structure

For a figure, we use hierarchy tree to represent it. Every movement on the component of the body will be a local one. Then we travel the hierarchy tree from the root to get the global movement. A stack of matrices is needed for remembering some temporary information.

User Interface

We can create our own animation or see the demo things. There are four steps to create a animation:
(1) Create isolated actions, (after you do that, you need to press the 'Freeze' button to keep it) (*)(**)
(2) Check the preview to make sure that it's what you want,
(3) Rendering (you can choose a appropriate frame number by entering a integer number in the text entry) and
(4) See the final performance. (***)

(*) In our interface, there are four kinds transformations can be operated on each component of the figure: 'Rotate by x', 'Rotate by y', 'Rotate by z' and 'Translate'. The Axles are the regular ones we familar. (the Z axle towards to the ceiling, Y axle towards to the right)
(**) You can go back to some specific frame and edit it.
(***) You can save this animation as you want it.

The first step will be a little bit tricky because that you need to remember where the local axles are at every time. On the other hand, to render a play will be slow, to load a play will be slow, either.

3.0 Welcome to Program Demo

(*) see 'Computer Graphics, Principles and Practice' by Foley, van Dam, Feiner a nd Hughes, 2nd Edition, Addison Wesley, 1990