# GLNORMAL

NAME
C SPECIFICATION
PARAMETERS
C SPECIFICATION
PARAMETERS
DESCRIPTION
NOTES
ASSOCIATED GETS
SEE ALSO

## NAME

glNormal3b, glNormal3d, glNormal3f, glNormal3i, glNormal3s, glNormal3bv, glNormal3dv, glNormal3fv, glNormal3iv, glNormal3sv − set the current normal vector

## C SPECIFICATION

void glNormal3b( GLbyte nx,

 GLbyte ny, GLbyte nz )

void glNormal3d( GLdouble nx,

 GLdouble ny, GLdouble nz )

void glNormal3f( GLfloat nx,

 GLfloat ny, GLfloat nz )

void glNormal3i( GLint nx,

 GLint ny, GLint nz )

void glNormal3s( GLshort nx,

 GLshort ny, GLshort 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).

## C SPECIFICATION

void glNormal3bv( const GLbyte *v )
void glNormal3dv( const GLdouble *v )
void glNormal3fv( const GLfloat *v )
void glNormal3iv( const GLint *v )
void glNormal3sv( const GLshort *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 glNormal is issued. Byte, short, or integer arguments are converted to floating-point
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 glNormal need not have unit length. If GL_NORMALIZE is enabled, then normals of any length specified with glNormal are normalized after transformation. If GL_RESCALE_NORMAL is enabled, normals are scaled by a scaling factor derived from the modelview matrix. GL_RESCALE_NORMAL requires that the originally specified normals were of unit length, and that the modelview matrix contain only uniform scales for proper results. To enable and disable normalization, call glEnable and glDisable with either GL_NORMALIZE or GL_RESCALE_NORMAL. Normalization is initially disabled.

## NOTES

The current normal can be updated at any time. In particular, glNormal can be called between a call to glBegin and the corresponding call to glEnd.

## ASSOCIATED GETS

glGet with argument GL_CURRENT_NORMAL
glIsEnabled
with argument GL_NORMALIZE
glIsEnabled
with argument GL_RESCALE_NORMAL

## SEE ALSO

glBegin(3G), glColor(3G), glIndex(3G), glNormalPointer(3G), glTexCoord(3G), glVertex(3G)

## More Linux Commands

manpages/snmp_alarm_register_hr.3.html
snmp_alarm_register_hr(3) - alarm functions - Linux man page
These functions implement support for a generic timer handling mechanism for multiple parts of an application to register function callbacks to happen at a part

manpages/setkey_r.3.html
setkey_r(3) - encrypt 64-bit messages - Linux manual page...
These functions encrypt and decrypt 64-bit messages. The setkey() function sets the key used by encrypt(). The key argument used here is an array of 64 bytes, e

manpages/gnutls_x509_crt_get_preferred_hash_algorithm.3.html
gnutls_x509_crt_get_preferred_hash_algorithm.3..............
gnutls_x509_crt_get_preferred_hash_algorithm.3 - This function will read the certifcate and return the appropriate digest algorithm to use for signing with this

manpages/asn1_number_of_elements.3.html
asn1_number_of_elements(3) - Counts the number of elements o
Counts the number of elements of a sub-structure called NAME with names equal to ?1,?2, ... RETURNS ASN1_SUCCESS if successful, ASN1_ELEMENT_NOT_FOUND if name i

manpages/fsync.2.html
fsync(2) - synchronize a file's in-core state with storage d
fsync() transfers (flushes) all modified in-core data of (i.e., modified buffer cache pages for) the file referred to by the file descriptor fd to the disk devi

manpages/XGetPointerControl.3.html
XGetPointerControl(3) - control pointer - Linux manual page
The XChangePointerControl function defines how the pointing device moves. The acceleration, expressed as a fraction, is a multiplier for movement. For example,

manpages/XGetErrorText.3.html
XGetErrorText(3) - default error handlers - Linux man page
Xlib generally calls the programs supplied error handler whenever an error is received. It is not called on BadName errors from OpenFont, LookupColor, or AllocN

manpages/sys_errlist.3.html
sys_errlist(3) - print a system error message (Man Page)....
sys_errlist.3 - The routine perror() produces a message on the standard error output, describing the last error encountered during a call to a system or library

manpages/gvfs-tree.1.html
gvfs-tree(1) List contents of directories in a treelike form
gvfs-tree lists the contents of the given directories recursively, in a tree-like format. If no location is given, it defaults to the current directory. gvfs-tr

manpages/XtAppSetErrorMsgHandler.3.html
XtAppSetErrorMsgHandler(3) - high-level error handlers......
The XtAppErrorMsg function calls the high-level error handler and passes the specified information. The XtAppSetErrorMsgHandler function registers the specified

manpages/tk_library.n.html
tk_library(n) Variables used or set by Tk __________________
The following Tcl variables are either set or used by Tk at various times in its execution: tk_library This variable holds the file name for a directory contain

manpages/slk_attr_off.3ncurses.html
slk_attr_off(3ncurses) - curses soft label routines.........
The slk* functions manipulate the set of soft function-key labels that exist on many terminals. For those terminals that do not have soft labels, curses takes o