The SEDRIS Data Representation Model
APPENDIX A - Classes Animation Behaviour |
---|
An instance of this DRM class specifies, for its aggregate <Animation Related Geometry> instance(s), all the information necessary to define one animation sequence among the "frames" defined by that <Animation Related Geometry> instance.
Consider an animation representing an explosion such that the animation has three different sequences. One sequence represents the explosion, another sequence the fire, and another sequence smoke. The entire animation is represented by an <Animation Related Geometry> instance with three <Animation Behaviour> components, where the fields of the <Animation Behaviour> component corresponding to a sequence identify the beginning and ending frame within the sequence and specify the duration of each frame.
The <Animation Related Geometry> instance has 60 ordered <Geometry Hierarchy> components. The first <Animation Behaviour> component (explosion) defines frames 1 through 20 in its animation sequence. The second <Animation Behaviour> component (fire) defines frames 21 through 40 in its animation sequence. The third <Animation Behaviour> component (smoke) defines frames 41 through 60 as its sequence, with count set to 0. The effect is to see the animation of the explosion followed by the fire, followed by the smoke. The smoke lasts forever, since its count field was set to 0.
Yes. An <Animation Related Geometry> instance can have one or more ordered <Animation Behaviour> components. In the example (below) of an explosion, each one of the sections (that is, explosion, fire, and smoke) can be its own <Animation Behaviour> instance. Because the <Animation Behaviour> components are ordered, they behave as though they are chained together, one following the other.
Yes.
The period field specifies the duration (in seconds) of each frame.
The count field specifies the number of times that the animation sequence will repeat, where 0 indicates that it repeats endlessly.
If the value of the forward_sequence_mode field is SE_TRUE, the animation sequence cycles from beginning to end, beginning to end, beginning to end, for the number of iterations specified by count; this is referred to as standard cycling. If forward_sequence_mode is SE_FALSE, the animation sequence cycles from beginning to end, end to beginning, beginning to end, end to beginning, as specified by count; this is referred to as swing mode.
The beginning_frame field specifies the index of the beginning frame among the ordered <Geometry Hierarchy> components of the <Animation Related Geometry> instance under consideration.
The ending_frame field specifies the index of the ending frame among the ordered <Geometry Hierarchy> components of the <Animation Related Geometry> instance under consideration.
The random_beginning_frame field specifies whether the beginning frame is chosen randomly. If random_beginning_frame = SE_TRUE, the beginning_frame field is ignored, and the sequence cycles towards the ending frame. If random_beginning_frame = SE_FALSE, the sequence cycles from the frame specified by the beginning_frame field.
|