Append_Modelling_Matrix

Functions

void Append_Modelling_Matrix (const float *array)
 Allows direct manipulation of the matrix transform applied against all picture elements and subsegments in a segment. More...
 
void DAppend_Modelling_Matrix (const double *array)
 Similar to Append_Modelling_Matrix(), but accepts double-precision data. More...
 

Detailed Description

Function Documentation

◆ Append_Modelling_Matrix()

void Append_Modelling_Matrix ( const float *  array)

Allows direct manipulation of the matrix transform applied against all picture elements and subsegments in a segment.

Parameters
array- Transform matrix provided by the user. Passed by reference in all languages. May need to be transposed in languages other than C.

DETAILS

Appends the explicitly provided transformation to the cumulative modelling transform of the currently open segment, or to the named segment(s). The visual effect is that of the scene as it was, then this change. (The old array is multiplied on the left by this new array.)
Use this routine only if your program organizes and keeps track of the net transformations applied to your objects.

NOTES

The array should be stored so the column varies faster than the row as you proceed through consecutive memory locations. In C and Pascal, the first index of the array is usually the row index and the second index is the column.

If there was no previous transform, this operation becomes a plain Set_Modelling_Matrix() .
The first, second, and third rows of the fourth column of array must be zero—no "perspective" transformation is allowed. The fourth row of the fourth column is usually 1.0 (it must not be zero.)

RESTRICTIONS

See also
Set_Modelling_Matrix, Rotate_Object, Translate_Object, Scale_Object, Set_Camera, Orbit_Camera.

◆ DAppend_Modelling_Matrix()

void DAppend_Modelling_Matrix ( const double *  array)

Similar to Append_Modelling_Matrix(), but accepts double-precision data.

Parameters
array- Transform matrix provided by the user. Passed by reference in all languages. May need to be transposed in languages other than C.