gluTessNormal(3G) OpenGL Reference gluTessNormal(3G)
gluTessNormal - specify a normal for a polygon
void gluTessNormal( GLUtesselator* tess,
GLdouble valueX,
GLdouble valueY,
GLdouble valueZ )
tess Specifies the tessellation object (created with gluNewTess).
valueX Specifies the first component of the normal.
valueY Specifies the second component of the normal.
valueZ Specifies the third component of the normal.
gluTessNormal describes a normal for a polygon that the program is
defining. All input data will be projected onto a plane perpendicular to
one of the three coordinate axes before tessellation and all output
triangles will be oriented CCW with respect to the normal (CW orientation
can be obtained by reversing the sign of the supplied normal). For
example, if you know that all polygons lie in the x-y plane, call
gluTessNormal(tess, 0.0, 0.0, 1.0) before rendering any polygons.
If the supplied normal is (0.0, 0.0, 0.0) (the initial value), the normal
is determined as follows. The direction of the normal, up to its sign, is
found by fitting a plane to the vertices, without regard to how the
vertices are connected. It is expected that the input data lies
approximately in the plane; otherwise, projection perpendicular to one of
the three coordinate axes may substantially change the geometry. The sign
of the normal is chosen so that the sum of the signed areas of all input
contours is nonnegative (where a CCW contour has positive area).
The supplied normal persists until it is changed by another call to
gluTessNormal.
gluTessBeginPolygon, gluTessEndPolygon
PPPPaaaaggggeeee 1111 [ Back ]
|