Set_Texture_Matrix

Functions

void Set_Texture_Matrix (const float *matrix)
 Allows direct specification of the transformation that is applied against all vertex parameters in the segment's scope. More...
 
void UnSet_Texture_Matrix (void)
 Removes all settings established by a previous call to Set_Texture_Matrix(). More...
 

Detailed Description

Function Documentation

◆ Set_Texture_Matrix()

void Set_Texture_Matrix ( const float *  matrix)

Allows direct specification of the transformation that is applied against all vertex parameters in the segment's scope.

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

DETAILS

Texture mapping is available in HOOPS using shell or mesh primitives. It is not applicable to polygons. A texture map can be applied to the faces, edges, and / or markers of a mesh or shell using the Set_Color() command.

On the way down the texture mapping pipeline (see Define_Texture() ), each shell or mesh (u, v, w) vertex parameter is passed through the adjoint of the specified transformation matrix. Since the vertex parameters maintain their geometric positions the opposite of the specified transform (called the adjoint matrix) is applied, which gives the appearance that the texture map has been transformed as requested.

Set_Texture_Matrix() allows you to set the full transformation, but it is more common to accumulate a net texture transformation by calling the utility routines Rotate, Translate, or Scale Texture one or more times. If your program has a special need to compute and track geometric transformations, you can load the matrix directly.

Unlike "modelling" matrices, texture matrices are not cumulativeif another texture matrix specification is encountered lower in the segment tree it will replace the parent's opinion.

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

The fourth row of the fourth column is usually 1.0 (it must not be zero.)

NOTES

RESTRICTIONS

See also
Define_Texture, Rotate_Texture, Set_Color, Translate_Texture, Scale_Texture, Append_Texture_Matrix.

◆ UnSet_Texture_Matrix()

void UnSet_Texture_Matrix ( void  )

Removes all settings established by a previous call to Set_Texture_Matrix().

DETAILS

No additional details. See Set_Texture_Matrix()