Caching of intermediate results is particularly useful in conjunction with the Data Explorer Sequencer module. The Sequencer provides Data Explorer with a very simple and flexible animation capability. The sequencer outputs a frame count, which is updated with each new execution. The user controls the behavior using a VCR-like interactor (see "Using the Sequencer").
The first time the Sequencer is "played", it causes the network to be executed with each value for the Sequencer output. Each execution, which may be time consuming, will result in a new image being generated. These images are simply the result of a rendering module and will be retained in the cache. When the Sequencer is "replayed", the inputs to the network are the same as they were for one of the frames in the first set of executions. Thus, the result of the execution (an image) will be immediately available from the cache. Hence, Data Explorer provides an automatic mechanism to create real-time animations even when the computation of each frame is slower than real-time.
The value produced by the Sequencer can be used in a number of ways. The Sequencer may be used to iterate through a time-dependent data set, causing the visualization to operate on each time step in turn, resulting in an animation showing how the data vary with time. As another example, the Sequencer could be used to drive the isovalue input to the Isosurface module.
[ OpenDX Home at IBM | OpenDX.org ]