The SEDRIS Data Representation Model
APPENDIX A - Classes
Animation Behaviour

Class Name: Animation Behaviour

Superclass - <SEDRIS Abstract Base>

Subclasses

This DRM class is concrete and has no subclasses.

Definition

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>.

Primary Page in DRM Diagram:

Secondary Pages in DRM Diagram:

This class appears on only one page of the DRM class diagram.

Example

  1. An animation of an explosion could have many different sections. One section could represent the explosion, another section the fire, and another section smoke. The fields of this class give the duration of each frame and the beginning and ending frame sequence.

  2. The <Animation Related Geometry> instance would have 60 ordered <Geometry Hierarchy> components. The first <Animation Behaviour> (explosion) would define frames 1 through 20 in its animation sequence. The second <Animation Behaviour> (fire) would define frames 21 through 40 in its animation sequence. The third <Animation Behaviour> (smoke) would define frames 41 through 60 as its sequence, with count set to 0. The effect would be to see the animation of the explosion followed by the fire, followed by the smoke. The smoke would last forever, since its count field was set to 0.

FAQs

Can animation sequences be chained together?

Yes. An instance of the <Animation Related Geometry> class can have one or more ordered instances of <Animation Behaviour> as 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>. Because the <Animation Behaviour> components are ordered, they behave as though they are chained together, one following the other.

Can the frames in different animation sequences overlap?

Yes.

Constraints

Component of (two-way)

Inherited Field Elements

This class has no inherited field elements.

Field Elements

SE_Long_Float period; (notes)
SE_Short_Integer_Unsigned count; (notes)
SE_Boolean forward_sequence_mode; (notes)
SE_Short_Integer_Positive beginning_frame; (notes)
SE_Short_Integer_Positive ending_frame; (notes)
SE_Boolean random_beginning_frame; (notes)

Notes

Fields Notes


period

 The period field specifies the duration (in seconds) of each frame.

count

 The count field specifies the number of times that the animation
 sequence will repeat, where 0 indicates that it repeats endlessly.

forward_sequence_mode

 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*.

beginning_frame

 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.

ending_frame

 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.

random_beginning_frame

 The random_beginning_frame field specifies whether the beginning
 frame is chosen randomly.
 If random_beginning_frame = SE_FALSE, the beginning frame is ignored,
 and the sequence cycles towards the ending frame.

Prev: Ambient Colour. Next: Animation Related Geometry. Up:Index.

Last updated: July 16, 2004 Copyright © 2004 SEDRIS