123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- '\" e
- '\"! eqn | mmdoc
- '\"macro stdmacro
- .ds Vn Version 1.2
- .ds Dt 6 March 1997
- .ds Re Release 1.2.0
- .ds Dp May 02 11:53
- .ds Dm 37 nurbscurv
- .ds Xs 25594 5 nurbscurve.gl
- .TH GLUNURBSCURVE 3G
- .SH NAME
- .B "gluNurbsCurve
- \- define the shape of a NURBS curve
- .SH C SPECIFICATION
- void \f3gluNurbsCurve\fP(
- GLUnurbs* \fInurb\fP,
- .nf
- .ta \w'\f3void \fPgluNurbsCurve( 'u
- GLint \fIknotCount\fP,
- GLfloat \fI*knots\fP,
- GLint \fIstride\fP,
- GLfloat \fI*control\fP,
- GLint \fIorder\fP,
- GLenum \fItype\fP )
- .fi
- .EQ
- delim $$
- .EN
- .SH PARAMETERS
- .TP \w'\fIknotCount\fP\ \ 'u
- \f2nurb\fP
- Specifies the NURBS object (created with \%\f3gluNewNurbsRenderer\fP).
- .TP
- \f2knotCount\fP
- Specifies the number of knots in \f2knots\fP.
- \f2knotCount\fP equals the number of control points plus the order.
- .TP
- \f2knots\fP
- Specifies an array of \f2knotCount\fP nondecreasing knot values.
- .TP
- \f2stride\fP
- Specifies the offset (as a number of single-precision floating-point values)
- between successive curve control points.
- .TP
- \f2control\fP
- Specifies a pointer to an array of control points. The coordinates must
- agree with \f2type\fP, specified below.
- .TP
- \f2order\fP
- Specifies the order of the NURBS curve. \f2order\fP equals degree + 1, hence
- a cubic curve has an order of 4.
- .TP
- \f2type\fP
- Specifies the type of the curve. If this curve is defined within a
- \%\f3gluBeginCurve\fP/\%\f3gluEndCurve\fP pair, then
- the type can be any of the valid
- one-dimensional evaluator types (such as \%\f3GL_MAP1_VERTEX_3\fP or
- \%\f3GL_MAP1_COLOR_4\fP). Between a \%\f3gluBeginTrim\fP/\%\f3gluEndTrim\fP pair,
- the only valid types are \%\f3GLU_MAP1_TRIM_2\fP and \%\f3GLU_MAP1_TRIM_3\fP.
- .SH DESCRIPTION
- Use \%\f3gluNurbsCurve\fP to describe a NURBS curve.
- .P
- When \%\f3gluNurbsCurve\fP appears between a \%\f3gluBeginCurve\fP/\%\f3gluEndCurve\fP pair, it is
- used to describe a curve to be rendered.
- Positional, texture, and color coordinates are associated
- by presenting each as a separate \%\f3gluNurbsCurve\fP between a
- \%\f3gluBeginCurve\fP/\%\f3gluEndCurve\fP pair. No more than
- one call to \%\f3gluNurbsCurve\fP for each of color, position, and texture
- data can be made within a single \%\f3gluBeginCurve\fP/\%\f3gluEndCurve\fP
- pair. Exactly one call must be made to describe the position of the
- curve (a \f2type\fP of \%\f3GL_MAP1_VERTEX_3\fP or \%\f3GL_MAP1_VERTEX_4\fP).
- .P
- When \%\f3gluNurbsCurve\fP appears between a \%\f3gluBeginTrim\fP/\%\f3gluEndTrim\fP pair, it is
- used to describe a trimming curve on a NURBS surface. If \f2type\fP is
- \%\f3GLU_MAP1_TRIM_2\fP, then it describes a curve in two-dimensional (\f2u\fP
- and \f2v\fP)
- parameter space. If it is \%\f3GLU_MAP1_TRIM_3\fP, then it describes a
- curve in two-dimensional homogeneous (\f2u\fP, \f2v\fP, and \f2w\fP)
- parameter space.
- See the \%\f3gluBeginTrim\fP reference page for more discussion about trimming
- curves.
- .SH EXAMPLE
- The following commands render a textured NURBS curve with normals:
- .sp
- .Ex
- gluBeginCurve(nobj);
- gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2);
- gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL);
- gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4);
- gluEndCurve(nobj);
- .Ee
- .sp
- .SH NOTES
- To define trim curves which stitch well, use \%\f3gluPwlCurve\fP.
- .SH SEE ALSO
- \%\f3gluBeginCurve(3G)\fP, \%\f3gluBeginTrim(3G)\fP, \%\f3gluNewNurbsRenderer(3G)\fP, \%\f3gluPwlCurve(3G)\fP
|