glClipPlane

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
GLCLIPPLANE(3G)						      GLCLIPPLANE(3G)



NAME
       glClipPlane - specify a plane against which all geometry is clipped


C SPECIFICATION
       void glClipPlane( GLenum plane,
			 const GLdouble *equation )


PARAMETERS
       plane	 Specifies  which  clipping  plane is being positioned.	 Sym-
		 bolic names of the form GL_CLIP_PLANEi, where i is an	inte-
		 ger between 0 and GL_MAX_CLIP_PLANESāˆ’1, are accepted.

       equation	 Specifies  the	 address of an array of four double-precision
		 floating-point values.	 These values are  interpreted	as  a
		 plane equation.

DESCRIPTION
       Geometry is always clipped against the boundaries of a six-plane frus-
       tum in x, y, and z.  glClipPlane allows	the  specification  of	addi-
       tional  planes,	not necessarily perpendicular to the x, y, or z axis,
       against which all geometry is clipped.  To determine the maximum	 num-
       ber  of	additional  clipping planes, call glGetIntegerv with argument
       GL_MAX_CLIP_PLANES. All implementations	support	 at  least  six	 such
       clipping	 planes.  Because the resulting clipping region is the inter-
       section of the defined half-spaces, it is always convex.

       glClipPlane specifies a half-space using a four-component plane	equa-
       tion.   When  glClipPlane  is  called,  equation is transformed by the
       inverse of the modelview matrix and stored in the resulting eye	coor-
       dinates.	 Subsequent changes to the modelview matrix have no effect on
       the stored plane-equation components.  If the dot product of  the  eye
       coordinates  of	a vertex with the stored plane equation components is
       positive or zero, the vertex is	in  with  respect  to  that  clipping
       plane.  Otherwise, it is out.

       To  enable  and	disable	 clipping planes, call glEnable and glDisable
       with the argument GL_CLIP_PLANEi, where i is the plane number.

       All clipping planes are initially defined as (0, 0, 0, 0) in eye coor-
       dinates and are disabled.

NOTES
       It is always the case that GL_CLIP_PLANEi = GL_CLIP_PLANE0+i.

ERRORS
       GL_INVALID_ENUM is generated if plane is not an accepted value.

       GL_INVALID_OPERATION  is	 generated if glClipPlane is executed between
       the execution of glBegin and the corresponding execution of glEnd.

ASSOCIATED GETS
       glGetClipPlane
       glIsEnabled with argument GL_CLIP_PLANEi

SEE ALSO
       glEnable(3G)



							      GLCLIPPLANE(3G)