glLoadMatrix
Prev | GL | Next

## Name

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

## C Specification

`void `glLoadMatrixd`` | `(` | `const GLdouble *`m`);`
`void `glLoadMatrixf`` | `(` | `const GLfloat *`m`);`

## Python Specification

``glLoadMatrixd`` | `(` | ``m`) → `None``
``glLoadMatrixf`` | `(` | ``m`) → `None``

## Parameters

`m`
  Specifies a pointer to 16 consecutive values, which are used as the elements of a 4 × 4 column-major matrix.

## Description

`glLoadMatrix` 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 glMatrixMode).

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:

M v = m 0 m 4 m 8 m 12 m 1 m 5 m 9 m 13 m 2 m 6 m 10 m 14 m 3 m 7 m 11 m 15 × v 0 v 1 v 2 v 3

Where " × " 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

`GL_INVALID_OPERATION` is generated if `glLoadMatrix` is executed between the execution of `glBegin` and the corresponding execution of `glEnd`.

## Associated Gets

`glGet` with argument `GL_MATRIX_MODE`

`glGet` with argument `GL_COLOR_MATRIX`

`glGet` with argument `GL_MODELVIEW_MATRIX`

`glGet` with argument `GL_PROJECTION_MATRIX`

`glGet` with argument `GL_TEXTURE_MATRIX`

## See Also

glLoadIdentity, glMatrixMode, glMultMatrix, glPushMatrix

Prev | Up | Next
glLoadIdentity | Home | glLoadName