NAME
fglClipPlane - specify a plane against which all geometry is
clipped
FORTRAN SPECIFICATION
SUBROUTINE fglClipPlane( INTEGER*4 plane,
CHARACTER*8 equation )
PARAMETERS
plane Specifies which clipping plane is being
positioned. Symbolic names of the form
GL_CLIP_PLANEi, where i is an integer 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 frustum in x, y, and z. fglClipPlane allows the
specification of additional planes, not necessarily
perpendicular to the x, y, or z axis, against which all
geometry is clipped. To determine the maximum number of
additional clipping planes, call fglGetIntegerv with
argument GL_MAX_CLIP_PLANES. All implementations support at
least six such clipping planes. Because the resulting
clipping region is the intersection of the defined half-
spaces, it is always convex.
fglClipPlane specifies a half-space using a four-component
plane equation. When fglClipPlane is called, equation is
transformed by the inverse of the modelview matrix and
stored in the resulting eye coordinates. 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 fglEnable and
fglDisable 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 coordinates 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 fglClipPlane is
executed between the execution of fglBegin and the
corresponding execution of fglEnd.
ASSOCIATED GETS
fglGetClipPlane
fglIsEnabled with argument GL_CLIP_PLANEi
SEE ALSO
fglEnable