NAME fglNormal3b, fglNormal3d, fglNormal3f, fglNormal3i, fglNormal3s, fglNormal3bv, fglNormal3dv, fglNormal3fv, fglNormal3iv, fglNormal3sv - set the current normal vector FORTRAN SPECIFICATION SUBROUTINE fglNormal3b( INTEGER*1 nx, INTEGER*1 ny, INTEGER*1 nz ) SUBROUTINE fglNormal3d( REAL*8 nx, REAL*8 ny, REAL*8 nz ) SUBROUTINE fglNormal3f( REAL*4 nx, REAL*4 ny, REAL*4 nz ) SUBROUTINE fglNormal3i( INTEGER*4 nx, INTEGER*4 ny, INTEGER*4 nz ) SUBROUTINE fglNormal3s( INTEGER*2 nx, INTEGER*2 ny, INTEGER*2 nz ) PARAMETERS nx, ny, nz Specify the x, y, and z coordinates of the new current normal. The initial value of the current normal is the unit vector, (0, 0, 1). FORTRAN SPECIFICATION SUBROUTINE fglNormal3bv( CHARACTER*8 v ) SUBROUTINE fglNormal3dv( CHARACTER*8 v ) SUBROUTINE fglNormal3fv( CHARACTER*8 v ) SUBROUTINE fglNormal3iv( CHARACTER*8 v ) SUBROUTINE fglNormal3sv( CHARACTER*8 v ) PARAMETERS v Specifies a pointer to an array of three elements: the x, y, and z coordinates of the new current normal. DESCRIPTION The current normal is set to the given coordinates whenever fglNormal is issued. Byte, short, or integer arguments are converted to floating-point format with a linear mapping that maps the most positive representable integer value to 1.0, and the most negative representable integer value to -1.0. Normals specified with fglNormal need not have unit length. If normalization is enabled, then normals specified with fglNormal are normalized after transformation. To enable and disable normalization, call fglEnable and fglDisable with the argument GL_NORMALIZE. Normalization is initially disabled. NOTES The current normal can be updated at any time. In particular, fglNormal can be called between a call to fglBegin and the corresponding call to fglEnd. ASSOCIATED GETS fglGet with argument GL_CURRENT_NORMAL fglIsEnabled with argument GL_NORMALIZE SEE ALSO fglBegin, fglColor, fglIndex, fglNormalPointer, fglTexCoord, fglVertex