Partager via


gluNurbsSurface, fonction

La fonction gluNurbsSurface définit la forme d’une surface B-Spline rationnelle non uniforme (NURBS).

Syntaxe

void WINAPI gluNurbsSurface(
   GLUnurbs *nobj,
   GLint    sknot_count,
   float    *sknot,
   GLint    tknot_count,
   GLfloat  *tknot,
   GLint    s_stride,
   GLint    t_stride,
   GLfloat  *ctlarray,
   GLint    sorder,
   GLint    torder,
   GLenum   type
);

Paramètres

nobj

Objet NURBS (créé avec gluNewNurbsRenderer).

sknot_count

Nombre de nœuds dans la direction paramétrique u .

sknot

Tableau de valeurs de nœuds non décrétrices sknot_count dans la direction u paramétrique.

tknot_count

Nombre de nœuds dans la direction paramétrique V .

tknot

Tableau de valeurs de nœuds non décrétrices tknot_count dans la direction paramétrique V .

s_stride

Décalage (sous la forme d’un nombre de valeurs de point de précision uniques) entre les points de contrôle successifs dans la direction u paramétrique dans ctlarray.

t_stride

Décalage (en valeurs de point de précision uniques) entre les points de contrôle successifs dans la direction paramétrique v dans ctlarray.

ctlarray

Tableau contenant des points de contrôle pour la surface NURBS. Les décalages entre les points de contrôle successifs dans les directions paramétriques u et v sont donnés par s_stride et t_stride.

sorder

Ordre de la surface NURBS dans la direction paramétrique u . L’ordre est un de plus que le degré, par conséquent une surface qui est cubique en u a un ordre u de 4.

torder

Ordre de la surface NURBS dans la direction paramétrique v . L’ordre est un de plus que le degré, donc une surface qui est cubique en v a un ordre v de 4.

type

Type de la surface. Le paramètre type peut être l’un des types d’évaluateurs à deux dimensions valides (par exemple, GL_MAP2_VERTEX_3 ou GL_MAP2_COLOR_4).

Valeur renvoyée

Cette fonction ne retourne pas de valeur.

Notes

Utilisez gluNurbsSurface dans une définition de surface NURBS pour décrire la forme d’une surface NURBS (avant toute suppression). Pour marquer le début d’une définition de surface NURBS, utilisez la fonction gluBeginSurface . Pour marquer la fin d’une définition de surface NURBS, utilisez la fonction gluEndSurface . Appelez gluNurbsSurface dans une définition de surface NURBS uniquement.

Vous associez des coordonnées positionnelles, de texture et de couleur à une surface en présentant chacune sous forme de gluNurbsSurface distincte entre une paire gluBeginSurface/gluEndSurface . Dans une seule paire gluBeginSurface/gluEndSurface , vous ne pouvez effectuer qu’un seul appel à gluNurbsSurface pour les données de couleur, de position et de texture. Effectuez un seul appel pour décrire la position de la surface ( un type de GL_MAP2_VERTEX_3 ou de GL_MAP2_VERTEX_4).

Vous pouvez découper une surface NURBS à l’aide des fonctions gluNurbsCurve et gluPwlCurve entre les appels à gluBeginTrim et gluEndTrim.

Un gluNurbsSurface avec sknot_count nœuds dans la direction u et tknot_count nœuds dans la direction v avec commandes sorder et torder doivent avoir (sknot_count -sorder) multipied by (tknot_count torder) points de contrôle (tknot_count -torder).

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Glu.h
Bibliothèque
Glu32.lib
DLL
Glu32.dll

Voir aussi

gluBeginSurface

gluBeginTrim

gluEndSurface

gluEndTrim

gluNewNurbsRenderer

gluNurbsCurve

gluPwlCurve