Table 6.9 — DRM_Animation_Behaviour

Property

Description

Class

  • <DRM Animation Behaviour>

Superclass

Subclass

  • None.

Definition

An instance of this DRM class specifies, for its aggregate <DRM Animation Related Geometry> instance(s), all the information necessary to define one animation sequence among the “frames” defined by that <DRM Animation Related Geometry> instance.

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 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 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 <DRM Geometry Hierarchy> components of the <DRM Animation Related Geometry> instance under consideration.

The ending_frame field specifies the index of the ending frame among the ordered <DRM Geometry Hierarchy> components of the <DRM Animation Related Geometry> instance under consideration.

The random_beginning_frame field specifies whether the beginning frame is chosen randomly. If random_beginning_frame = TRUE, the beginning_frame field is ignored, and the sequence cycles towards the ending frame. If random_beginning_frame = FALSE, the sequence cycles from the frame specified by the beginning_frame field.

Class diagram

Figure 6.8 — DRM_Animation_Behaviour

Inherited field elements

Field name

Range

Field data type

None

   

Field elements

Field name

Range

Field data type

period

> 0,0

Long_Float

count

 

Short_Integer_Unsigned

forward_sequence_mode

 

Boolean

beginning_frame

 

Short_Integer_Positive

ending_frame

 

Short_Integer_Positive

random_beginning_frame

 

Boolean

Default field values

Default field values for DRM_Animation_Behaviour

Associated to (one-way) (inherited)

  • None.

Associated to (one-way)

  • None.

Associated by (one-way) (inherited)

  • None.

Associated by (one-way)

  • None.

Associated with (two-way) (inherited)

  • None.

Associated with (two-way)

  • None.

Composed of (two-way) (inherited)

  • None.

Composed of (two-way)

  • None.

Composed of (two-way metadata) (inherited)

  • None.

Composed of (two-way metadata)

  • None.

Component of (two-way) (inherited)

  • None.

Component of (two-way)

Constraints

Clarifications

None.

Example(s)

  • 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 a <DRM Animation Related Geometry> instance with three <DRM Animation Behaviour> components, where the fields of the <DRM Animation Behaviour> component corresponding to a sequence identify the beginning and ending frame within the sequence and specify the duration of each frame.

    The <DRM Animation Related Geometry> instance has 60 ordered <DRM Geometry Hierarchy> components. The first <DRM Animation Behaviour> component (explosion) defines frames 1 through 20 in its animation sequence. The second <DRM Animation Behaviour> component (fire) defines frames 21 through 40 in its animation sequence. The third <DRM 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.