
B
gluBeginTrim
Chapter 2
26
gluBeginTrim
gluBeginTrim, gluEndTrim:
delimit a NURBS trimming loop definition.
C Specification
void gluBeginTrim(
GLUnurbs* nurb)
void gluEndTrim(
GLUnurbs* nurb)
Parameters
nurb
Specifies the NURBS object (created with gluNewNurbsRenderer).
Description
Use gluBeginTrim to mark the beginning of a trimming loop, and gluEndTrim to mark
the end of a trimming loop. A trimming loop is a set of oriented curve segments (forming
a closed curve) that define boundaries of a NURBS surface. You include these trimming
loops in the definition of a NURBS surface, between calls to gluBeginSurface and
gluEndSurface.
The definition for a NURBS surface can contain many trimming loops. For example, if
you wrote a definition for a NURBS surface that resembled a rectangle with a hole
punched out, the definition would contain two trimming loops. One loop would define the
outer edge of the rectangle; 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 piece wise linear curve (see gluPwlCurve) or as a single NURBS
curve (see gluNurbsCurve), or as a combination 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).
Содержание c3700 - Workstation
Страница 9: ...Chapter 1 9 1 A ...
Страница 12: ...A glAccum Chapter 1 12 glLogicOp glPixelStore glPixelTransfer glReadBuffer glReadPixels glScissor glStencilOp ...
Страница 18: ...A glArrayElement Chapter 1 18 glNormalPointer glTexCoordPointer glVertexPointer ...
Страница 19: ...Chapter 2 19 2 B ...
Страница 40: ...B gluBuild2DMipmaps Chapter 2 40 ...
Страница 41: ...Chapter 3 41 3 C ...
Страница 49: ...C glXChooseVisual Chapter 3 49 See Also glXCreateContext glXGetConfig ...
Страница 73: ...C glCopyPixels Chapter 3 73 glReadBuffer glReadPixels glStencilFunc ...
Страница 84: ...C glCopyTexSubImage2D Chapter 3 84 glTexParameter glTexSubImage1D glTexSubImage2D ...
Страница 93: ...Chapter 4 93 4 D ...
Страница 99: ...D glDeleteTextures Chapter 4 99 glTexImage1D glTexImage2D glTexParameter ...
Страница 127: ...Chapter 5 127 5 E ...
Страница 148: ...E glEvalPoint Chapter 5 148 ...
Страница 149: ...Chapter 6 149 6 F ...
Страница 161: ...Chapter 7 161 7 G ...
Страница 164: ...G glGenTextures Chapter 7 164 glTexImage1D glTexImage2D glTexParameter ...
Страница 185: ...G glGet Chapter 7 185 glGetTexGen glGetTexImage glGetTexLevelParameter glGetTexParameter glIsEnabled ...
Страница 207: ...G glGetPointer Chapter 7 207 glSelectBuffer glTexCoordPointer glVertexPointer ...
Страница 224: ...G glGetTexParameter Chapter 7 224 See Also glAreTexturesResident glPrioritizeTextures glTexParameter ...
Страница 225: ...Chapter 8 225 8 H ...
Страница 228: ...H glHint Chapter 8 228 ...
Страница 229: ...Chapter 9 229 9 I ...
Страница 248: ...I glIsTexture Chapter 9 248 ...
Страница 249: ...Chapter 10 249 10 L ...
Страница 256: ...L glLightModel Chapter 10 256 See Also glLight glMaterial ...
Страница 271: ...Chapter 11 271 11 M ...
Страница 291: ...Chapter 12 291 12 N ...
Страница 312: ...N gluNurbsSurface Chapter 12 312 ...
Страница 313: ...Chapter 13 313 13 O ...
Страница 317: ...Chapter 14 317 14 P ...
Страница 345: ...P glPolygonStipple Chapter 14 345 See Also glDrawPixels glLineStipple glPixelStore glPixelTransfer ...
Страница 360: ...P glPushName Chapter 14 360 See Also glInitNames glLoadName glRenderMode glSelectBuffer ...
Страница 362: ...P gluPwlCurve Chapter 14 362 ...
Страница 363: ...Chapter 15 363 15 Q ...
Страница 372: ...Q glXQueryVersion Chapter 15 372 glXQueryVersion ...
Страница 373: ...Chapter 16 373 16 R ...
Страница 390: ...R glRotate Chapter 16 390 ...
Страница 391: ...Chapter 17 391 17 S ...
Страница 397: ...S glScissor Chapter 17 397 See Also glEnable glViewport ...
Страница 409: ...Chapter 18 409 18 T ...
Страница 430: ...T glTexEnv Chapter 18 430 glCopyTexSubImage2D glTexImage1D glTexImage2D glTexParameter glTexSubImage1D glTexSubImage2D ...
Страница 448: ...T glTexImage3DEXT Chapter 18 448 glTexGen glTexImage1D glTexImage2D glTexParameter ...
Страница 457: ...T glTexSubImage1D Chapter 18 457 glTexImage2D glTexParameter glTexSubImage2D ...
Страница 465: ...T glTranslate Chapter 18 465 See Also glMatrixMode glMultMatrix glPushMatrix glScale ...
Страница 466: ...T glTranslate Chapter 18 466 ...
Страница 467: ...Chapter 19 467 19 U ...
Страница 469: ...U gluUnProject Chapter 19 469 See Also glGet gluProject ...
Страница 471: ...U glXUseXFont Chapter 19 471 See Also glBitmap glXMakeCurrent ...
Страница 472: ...U glXUseXFont Chapter 19 472 ...
Страница 473: ...Chapter 20 473 20 V ...
Страница 482: ...V glVisibilityBufferhp Chapter 20 482 ...
Страница 483: ...Chapter 21 483 21 W ...
Страница 486: ...W glXWaitX Chapter 21 486 ...