Each edge of each primitive generated from a polygon, triangle strip, triangle
fan, separate triangle set, quadrilateral strip,
or separate quadrilateral set,
is flagged as either * boundary* or
* non-boundary*.
These classifications are used during polygon rasterization;
some modes affect the interpretation of polygon boundary edges
(see section 3.5.4).
By default,
all edges are boundary edges,
but the flagging of polygons,
separate triangles, or separate quadrilaterals
may be altered by calling

` void` ** EdgeFlag** ( ` boolean` * flag* ) ` ;`

` void` ** EdgeFlagv** ( ` boolean` * *flag* ) ` ;`

to change the value of a flag bit.
If * *flag* is zero, then the flag bit is set to ` FALSE`;
if * *flag* is non-zero, then the flag bit is set to ` TRUE`.

When ** Begin** is supplied with one of the argument values
` POLYGON`, ` TRIANGLES`,
or ` QUADS`,
each vertex
specified within a ** Begin** and ** End**
pair begins an edge.
If the edge flag bit is ` TRUE`,
then each specified
vertex begins an edge that is flagged as boundary.
If the bit is ` FALSE`,
then induced edges are flagged as non-boundary.

The state required for edge flagging consists
of one current flag bit.
Initially, the bit is ` TRUE`.
In addition,
each processed vertex of an assembled polygonal primitive
must be augmented with a bit indicating whether or not the edge beginning
on that vertex is boundary or non-boundary.

Sat Mar 29 02:23:21 PST 1997