gluBeginTrim man page on DigitalUNIX

Man page or keyword search:  
man Server   12896 pages
apropos Keyword Search (all sections)
Output format
DigitalUNIX logo
[printable version]

gluBeginTrim()							gluBeginTrim()

       gluBeginTrim, gluEndTrim - delimit a NURBS trimming loop definition

       void gluBeginTrim(
	       GLUnurbs* nurb ); void gluEndTrim(
	       GLUnurbs* nurb );

       Specifies the NURBS object (created with gluNewNurbsRenderer()).

       Use  gluBeginTrim()  to mark the beginning of a trimming loop, and glu‐
       EndTrim() to mark the end of a trimming loop.  A trimming loop is a set
       of  oriented curve segments (forming a closed curve) that define bound‐
       aries of a NURBS surface. You include these trimming loops in the defi‐
       nition  of a NURBS surface, between calls to gluBeginSurface() and glu‐

       The definition for a NURBS surface can  contain	many  trimming	loops.
       For  example, if you wrote a definition for a NURBS surface that resem‐
       bled a rectangle with a hole punched out, the definition would  contain
       two trimming loops. One loop would define the outer edge of the rectan‐
       gle; the other would define the hole punched out of the rectangle.  The
       definitions  of	each  of  these trimming loops would be bracketed by a
       gluBeginTrim()/gluEndTrim() pair.

       The definition of a single closed trimming loop can consist of multiple
       curve segments, each described as a piecewise linear curve (see gluPwl‐
       Curve()) or as a single NURBS curve (see gluNurbsCurve()), or as a com‐
       bination	 of  both in any order. The only library calls that can appear
       in a trimming loop definition (between the calls to gluBeginTrim()  and
       gluEndTrim()) are gluPwlCurve() and gluNurbsCurve().

       The  area  of  the NURBS surface that is displayed is the region in the
       domain to the left  of  the  trimming  curve  as	 the  curve  parameter
       increases.   Thus, the retained region of the NURBS surface is inside a
       counterclockwise trimming loop and outside a clockwise  trimming	 loop.
       For  the	 rectangle  mentioned earlier, the trimming loop for the outer
       edge of the rectangle runs counterclockwise, while  the	trimming  loop
       for the punched-out hole runs clockwise.

       If  you	use  more than one curve to define a single trimming loop, the
       curve segments must form a closed loop (that is, the endpoint  of  each
       curve must be the starting point of the next curve, and the endpoint of
       the final curve must be the starting point of the first curve). If  the
       endpoints  of the curve are sufficiently close together but not exactly
       coincident, they will be coerced to match. If  the  endpoints  are  not
       sufficiently close, an error results (see gluNurbsCallback()).

       If  a  trimming loop definition contains multiple curves, the direction
       of the curves must be consistent (that is, the inside must  be  to  the
       left  of all of the curves). Nested trimming loops are legal as long as
       the curve orientations alternate	 correctly.  If	 trimming  curves  are
       self-intersecting, or intersect one another, an error results.

       If  no  trimming	 information  is given for a NURBS surface, the entire
       surface is drawn.

       This code fragment defines a trimming loop that consists of one	piece‐
       wise linear curve, and two NURBS curves: gluBeginTrim(nobj);
	   gluPwlCurve(..., GLU_MAP1_TRIM_2);
	   gluNurbsCurve(..., GLU_MAP1_TRIM_2);
	   gluNurbsCurve(..., GLU_MAP1_TRIM_3); gluEndTrim(nobj);

       gluBeginSurface(3),     gluNewNurbsRenderer(3),	  gluNurbsCallback(3),
       gluNurbsCurve(3), gluPwlCurve(3)


List of man pages available for DigitalUNIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
Vote for polarhome
Free Shell Accounts :: the biggest list on the net