glScale(3G) OpenGL Reference glScale(3G)
NAME
glScaled, glScalef - multiply the current matrix by a general scaling
matrix
C SPECIFICATION
void glScaled( GLdouble x,
GLdouble y,
GLdouble z )
void glScalef( GLfloat x,
GLfloat y,
GLfloat z )
PARAMETERS
x, y, z
Specify scale factors along the x, y, and z axes, respectively.
DESCRIPTION
glScale produces a nonuniform scaling along the x, y, and z axes. The
three parameters indicate the desired scale factor along each of the
three axes.
The current matrix (see glMatrixMode) is multiplied by this scale matrix,
and the product replaces the current matrix as if glScale were called
with the following matrix as its argument:
| |
x 0 0 0
| |
| 0 y 0 0 |
| |
0 0 z 0
| |
| 0 0 0 1 |
If the matrix mode is either GLMODELVIEW or GLPROJECTION, all objects
drawn after glScale is called are scaled.
Use glPushMatrix and glPopMatrix to save and restore the unscaled
coordinate system.
NOTES
If scale factors other than 1 are applied to the modelview matrix and
lighting is enabled, lighting often appears wrong. In that case, enable
automatic normalization of normals by calling glEnable with the argument
GLNORMALIZE.
ERRORS
GLINVALIDOPERATION is generated if glScale is executed between the
execution of glBegin and the corresponding execution of glEnd.
Page 1
glScale(3G) OpenGL Reference glScale(3G)
ASSOCIATED GETS
glGet with argument GLMATRIXMODE
glGet with argument GLMODELVIEWMATRIX
glGet with argument GLPROJECTIONMATRIX
glGet with argument GLTEXTUREMATRIX
SEE ALSO
glMatrixMode, glMultMatrix, glPushMatrix, glRotate, glTranslate
Page 2