glMultMatrixd, glMultMatrixf

The glMultMatrixd and glMultMatrixf functions multiply the current matrix by an arbitrary matrix.

void glMultMatrixd(
  const GLdouble *m);void glMultMatrixf(  const GLfloat *m);

Parameters

  • m
    A pointer to a 4x4 matrix stored in column-major order as 16 consecutive values.

Remarks

The glMultMatrix function multiplies the current matrix by the one specified in m. That is, if M is the current matrix and T is the matrix passed to glMultMatrix, then M is replaced with M • T.

The current matrix is the projection matrix, modelview matrix, or texture matrix, determined by the current matrix mode (see glMatrixMode).

The m parameter points to a 4x4 matrix of single- or double-precision floating-point values stored in column-major order. That is, the matrix is stored as:

The following functions retrieve information related to glMultMatrix:

glGet with argument GL_MATRIX_MODE

glGet with argument GL_MODELVIEW_MATRIX

glGet with argument GL_PROJECTION_MATRIX

glGet with argument GL_TEXTURE_MATRIX

Error Codes

The following is the error code and its condition.

Error code Condition
GL_INVALID_OPERATION glMultMatrix was called between a call to glBegin and the corresponding call to glEnd.

Requirements

**  Windows NT/2000:** Requires Windows NT 3.5 or later.
**  Windows 95/98:** Requires Windows 95 or later. Available as a redistributable for Windows 95.
**  Header:** Declared in Gl.h.
**  Library:** Use Opengl32.lib.

See Also

glBegin, glEnd, glLoadIdentity, glLoadMatrix, glMatrixMode, glPushMatrix