GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  GLUNURBSSURFACE (3)

NAME

gluNurbsSurface - define the shape of a NURBS surface

CONTENTS

C Specification
Parameters
Description
Example
See Also

C SPECIFICATION

void gluNurbsSurface( GLUnurbs* nurb,

                    GLint sKnotCount,
                    GLfloat* sKnots,
                    GLint tKnotCount,
                    GLfloat* tKnots,
                    GLint sStride,
                    GLint tStride,
                    GLfloat* control,
                    GLint sOrder,
                    GLint tOrder,
                    GLenum type )

PARAMETERS

nurb Specifies the NURBS object (created with gluNewNurbsRenderer).
sKnotCount Specifies the number of knots in the parametric u direction.
sKnots Specifies an array of sKnotCount nondecreasing knot values in the parametric u direction.
tKnotCount Specifies the number of knots in the parametric v direction.
tKnots Specifies an array of tKnotCount nondecreasing knot values in the parametric v direction.
sStride Specifies the offset (as a number of single-precision floating point values) between successive control points in the parametric u direction in control.
tStride Specifies the offset (in single-precision floating-point values) between successive control points in the parametric v direction in control.
control Specifies an array containing control points for the NURBS surface. The offsets between successive control points in the parametric u and v directions are given by sStride and tStride.
sOrder Specifies the order of the NURBS surface in the parametric u direction. The order is one more than the degree, hence a surface that is cubic in u has a u order of 4.
tOrder Specifies the order of the NURBS surface in the parametric v direction. The order is one more than the degree, hence a surface that is cubic in v has a v order of 4.
type Specifies type of the surface. type can be any of the valid two-dimensional evaluator types (such as GL_MAP2_VERTEX_3 or GL_MAP2_COLOR_4).

DESCRIPTION

Use gluNurbsSurface within a NURBS (Non-Uniform Rational B-Spline) surface definition to describe the shape of a NURBS surface (before any trimming). To mark the beginning of a NURBS surface definition, use the gluBeginSurface command. To mark the end of a NURBS surface definition, use the gluEndSurface command. Call gluNurbsSurface within a NURBS surface definition only.

Positional, texture, and color coordinates are associated with a surface by presenting each as a separate gluNurbsSurface between a gluBeginSurface/gluEndSurface pair. No more than one call to gluNurbsSurface for each of color, position, and texture data can be made within a single gluBeginSurface/gluEndSurface pair. Exactly one call must be made to describe the position of the surface (a type of GL_MAP2_VERTEX_3 or GL_MAP2_VERTEX_4).

A NURBS surface can be trimmed by using the commands gluNurbsCurve and gluPwlCurve between calls to gluBeginTrim and gluEndTrim.

Note that a gluNurbsSurface with sKnotCount knots in the u direction and tKnotCount knots in the v direction with orders sOrder and tOrder must have (sKnotCount - sOrder) times (tKnotCount - tOrder) control points.

EXAMPLE

The following commands render a textured NURBS surface with normals; the texture coordinates and normals are also NURBS surfaces:


.Ex gluBeginSurface(nobj);
gluNurbsSurface(nobj, ..., GL_MAP2_TEXTURE_COORD_2);
gluNurbsSurface(nobj, ..., GL_MAP2_NORMAL);
gluNurbsSurface(nobj, ..., GL_MAP2_VERTEX_4); gluEndSurface(nobj);
.Ee

SEE ALSO

gluBeginSurface, gluBeginTrim, gluNewNurbsRenderer, gluNurbsCurve, gluPwlCurve

Search for    or go to Top of page |  Section 3 |  Main Index


GLUNURBSSURFACE (-->)

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.