Overview of Object Animation

The animation functionality in IDL lets you draw a series of images in rapid succession, the speed of which has no limit other than that of system capabilities and graphics hardware. You can easily control the rate and order of the image display, or synchronize several displays. You can also display overlays that contain other types of information (such as text, ROIs, or contours) that are either specific to the currently displayed image or common to all displayed images. In addition to images, other objects such as surface and volume objects can also be animated.

The key to this flexibility is due to the fact that animation capabilities are provided in part by an IDLgrModel object, to which you can add any combination of graphic objects. As shown in the following figure, the object hierarchy for animation is very similar to a standard window-scene-view-model hierarchy of a typical display. When the animation model is used in conjunction with an IDLitWindow and a custom behavior object, the animation display possibilities are nearly limitless.

Figure 10-1: Object Interaction in Animation Support

animation_diagram.gif

While the graphics tree of an animation display is very similar to a standard display, it is important to note the differences. Animation relies on an IDLitWindow (not IDLgrWindow), which has a built-in timer mechanism, and an IDLgrModel object that has an awareness of "Active Position" rendering. There is also a user-defined object that determines how the contents in the animation model are modified. This behavior object can incorporate any action, but it will commonly iterate through a series of images or transform a model object in response to a timer signal received from the window. See the following topics for more information on adding animation functionality to a program or application:

For an example that incorporates animation elements into a widget application that lets you interactively control the playback of a series of image frames, see Example: Interactive Cine Animation.

Note
For information on how scene contents, image sizes, and display refresh rates influence animation performance, see Factors Affecting Animation Performance.