fglScale(3G) OpenGL Reference fglScale(3G)NAME
fglScaled, fglScalef - multiply the current matrix by a general scaling
matrix
FORTRAN SPECIFICATION
SUBROUTINE fglScaled( REAL*4 x,
REAL*4 y,
REAL*4 z )
SUBROUTINE fglScalef( REAL*4 x,
REAL*4 y,
REAL*4 z )
PARAMETERS
x, y, z
Specify scale factors along the x, y, and z axes, respectively.
DESCRIPTION
fglScale 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 fglMatrixMode) is multiplied by this scale
matrix, and the product replaces the current matrix as if fglScale 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 GL_MODELVIEW or GL_PROJECTION, all objects
drawn after fglScale is called are scaled.
Use fglPushMatrix and fglPopMatrix 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 fglEnable with the argument
GL_NORMALIZE.
ERRORS
GL_INVALID_OPERATION is generated if fglScale is executed between the
execution of fglBegin and the corresponding execution of fglEnd.
Page 1
fglScale(3G) OpenGL Reference fglScale(3G)ASSOCIATED GETS
fglGet with argument GL_MATRIX_MODE
fglGet with argument GL_COLOR_MATRIX
fglGet with argument GL_MODELVIEW_MATRIX
fglGet with argument GL_PROJECTION_MATRIX
fglGet with argument GL_TEXTURE_MATRIX
SEE ALSO
fglMatrixMode, fglMultMatrix, fglPushMatrix, fglRotate, fglTranslate
Page 2