TransformGen

DESCRIPTION

This module constructs a 4x4 transformation matrix with rotation and translation. This is for use with Slice, ProbeLat, and other modules that require a transformation matrix input.

The small window shows the rotation component of the transform. This window contains a virtual trackball - the rotation may be changed by clicking and dragging with the left mouse button within the window. The X, Y, and Z axes are colored cyan, magenta, and yellow. The transparent disk is in the XY plane, which is the default slice orientation for the slicing modules provided.

Translation may be added to the transform with the sliders. Rotation is always about the origin, and translation is post-multiplied onto the rotation matrix, i.e. translation is applied *after* rotation. There is no visual feedback for translation.

The reset buttons provide a quick way to snap to commonly needed orientations. These buttons also zero any translations.

INPUTS

WIDGETS

Port: Window
Type: Drawing Area
This widget supplies a drawing area for the module.

Port: X Translate
Type: Slider
This is the X translation

Port: Y Translate
Type: Slider
This is the Y translation

Port: Z Translate
Type: Slider
This is the Z translation

Port: Reset XY
Type: Button
This button resets the transform to map input X and Y axes to output X and Y axes.

Port: Reset YZ
Type: Button
This button resets the transform to map input Y and Z axes to output X and Y axes.

Port: Reset ZX
Type: Button
This button resets the transform to map input Z and X axes to output X and Y axes.

OUTPUTS

Port: Output
Type: Lattice
Constraints: 2-D.
1-vector.
float.
The resultant transformation

PROBLEMS

The reset buttons zero any translations specified with the dials. However, if the range on the dials has been modified so that zero is out of range, the displayed value is clamped, although the real value is actually zero. The data and the dial will remain out of sync until the dial is modified.

SEE ALSO

Slice ProbeLat
[ Documentation Home ]
© The Numerical Algorithms Group Ltd, Oxford UK. 1996