NAME

glLoadMatrixd, glLoadMatrixf - replace the current matrix with the specified matrix

C SPECIFICATION

void ggllLLooaaddMMaattrriixxdd( const GLdouble _*_m )

void ggllLLooaaddMMaattrriixxff(
const GLfloat _*_m )


        

delim $$

PARAMETERS

_m
Specifies a pointer to 16 consecutive values, which are used as the elements of a $4 ~times~ 4$ column-major matrix.

DESCRIPTION

ggllLLooaaddMMaattrriixx replaces the current matrix with the one whose elements are specified by _m. The current matrix is the projection matrix, modelview matrix, or texture matrix, depending on the current matrix mode (see ggllMMaattrriixxMMooddee).

The current matrix, M, defines a transformation of coordinates. For instance, assume M refers to the modelview matrix. If $v ~=~ (v[0], v[1], v[2], v[3])$ is the set of object coordinates of a vertex, and _m points to an array of $16$ single- or double-precision floating-point values $m[0], m[1],. . .,m[15]$, then the modelview transformation $M(v)$ does the following:

down 130 {M(v) ~ = ~ {{ left ( matrix { ccol { ~m[0] above m[1] above m[2] above m[3] ~} ccol { ~m[4] above m[5] above m[6] above m[7] ~} ccol { ~m[8] above m[9] above m[10] above m[11] ~} ccol { ~m[12]~ above m[13]~ above m[14]~ above m[15]~} } right ) } ~~ times ~~ {left ( matrix { ccol { ~v[0]~ above ~v[1]~ above ~v[2]~ above ~v[3]~ } } right )} }}



Where ``$times$'' denotes matrix multiplication.

Projection and texture transformations are similarly defined.

NOTES

While the elements of the matrix may be specified with single or double precision, the GL implementation may store or operate on these values in less than single precision.

ERRORS

GGLL__IINNVVAALLIIDD__OOPPEERRAATTIIOONN is generated if ggllLLooaaddMMaattrriixx is executed between the execution of ggllBBeeggiinn and the corresponding execution of ggllEEnndd.

ASSOCIATED GETS

ggllGGeett with argument GGLL__MMAATTRRIIXX__MMOODDEE
ggllGGeett with argument GGLL__CCOOLLOORR__MMAATTRRIIXX
ggllGGeett with argument GGLL__MMOODDEELLVVIIEEWW__MMAATTRRIIXX
ggllGGeett with argument GGLL__PPRROOJJEECCTTIIOONN__MMAATTRRIIXX
ggllGGeett with argument GGLL__TTEEXXTTUURREE__MMAATTRRIIXX

SEE ALSO

ggllLLooaaddIIddeennttiittyy((33GG)), ggllMMaattrriixxMMooddee((33GG)), ggllMMuullttMMaattrriixx((33GG)), ggllPPuusshhMMaattrriixx((33GG))