Transformation hierarchies and effects trees may be defined in the same
user interface by treating animated transformations as another type of
time-varying data stream. Effects operators in the effect tree are
provided with an input to receive a transformation. The effects operators
can be set to either use a transformation having parameters specified by
the user, or use an input transformation, or both. Transform operators
may generate an output transform based on user specified parameters or
based on a function of data input to the transform operator. If there is
no input connected to a transform operator, the transform operator may
generate its own local transform. In the user interface, the user can
connect the output of one transformation operator to the next (e.g.,
parent to child) using the same output to input port connections as used
for images and effects operators. The result of a graph of transformation
operators is then visually connected to the input of the image processing
(rendering or rasterizing) effect, such as a DVE, that is capable of
using the final transformation. The user can then identify clearly which
image effects are consumers of the transformation matrices. Using the
data flow user interface, it also becomes possible to supply the same
transformation as input to several image processing effects.