<<<<<<<<<<<<<<<<<

transform_filter(display)Display Classestransform_filter(display)

NAME

transform_filter - applies a transformation to a display_data object

DESCRIPTION

The transform filter takes the name of a person, actor or transform object (creates a person object if none is specified) and uses that object's transformation matrix to transform the points, normals, and vectors of a display_data object (referenced by the data_in instance variable). The transformation matrix contains three components: a translation, a rotation, and a (not necessarily uniform) scale. The transformation is done as follows: For transforming points, all three components of the matrix are used as-is. For transforming normals, the transposed inverted matrix is used without translation component. The vectors of a display_data object are handled as the points, however translation component is excluded.

SUPERCLASS

display_filter

INSTANCE VARIABLES

person_name The name of a person object whose transformation to use.

MESSAGES

generate_data! Performs the transformation described above and puts the result in the data_out display_data object.

person_name[=?] person[=?] Standard string set and query methods.

does_not_understand Used internally to forward all unrecognized messages to the object referenced by the "person_name" instance variable. This allows the transform filter to accept messages like "front=" and "rotate_x:".

EXAMPLE

append_filter new:af1 data_in_set=(streamer_1,streamer_2) ;

tube_filter new:tf1 data_in=af1 radius=2.0 num_sides=3 ;

transform_filter new:xf1 data_in=tf1 position=(3,5,6)

scale=(1,1.5,1.8) rotate_y:30 ;

display_surface new:surf data_in=xf1; /* other messages setting up actors and renderer */

SEE ALSO

display_filter, ribbon_filter, merge_filter, tube_filter


Please send comments and suggestions to
consult@rpi.edu