Condividi tramite


funzione gluNurbsCurve

La funzione gluNurbsCurve definisce la forma di una curva B-Spline (NON Uniform Rational B-Spline).

Sintassi

void WINAPI gluNurbsCurve(
   GLUnurbs *nobj,
   GLint    nknots,
   GLfloat  *knot,
   GLint    stride,
   GLfloat  *ctlarray,
   GLint    order,
   GLenum   type
);

Parametri

nobj

Oggetto NURBS (creato con gluNewNurbsRenderer).

nknots

Numero di nodi in nodo. Il parametro nknots equivale al numero di punti di controllo e all'ordine.

Nodo

Matrice di nknots nondecrea i valori dei nodi.

Passo

Offset (come numero di valori a virgola mobile a precisione singola) tra i punti di controllo curva successivi.

ctlarray

Puntatore a una matrice di punti di controllo. Le coordinate devono accettare il tipo.

order

Ordine della curva NURBS. Il parametro dell'ordine è uguale a grado + 1; quindi una curva cubica ha un ordine di 4.

type

Tipo della curva. Se questa curva è definita all'interno di una coppiagluBeginCurve gluEndCurve/, il tipo può essere uno dei tipi di analizzatore unidimensionali validi, ad esempio GL_MAP1_VERTEX_3 o GL_MAP1_COLOR_4. Tra una coppia gluBeginTrim gluEndTrim/, gli unici tipi validi sono GLU_MAP1_TRIM_2 e GLU_MAP1_TRIM_3.

Valore restituito

Questa funzione non restituisce un valore.

Commenti

Quando gluNurbsCurve viene visualizzato tra una coppia gluBeginCurve/gluEndCurve , descrive una curva da eseguire per il rendering. Associare coordinate posizionali, trama e colore presentando ognuno come un gluNurbsCurve separato tra una coppia gluBeginCurvegluEndCurve/. Non effettuare più chiamate a gluNurbsCurve per i dati di colore, posizione e trama all'interno di una singola coppia gluBeginCurve gluEndCurve/. Eseguire esattamente una chiamata per descrivere la posizione della curva (un tipo di GL_MAP1_VERTEX_3 o GL_MAP1_VERTEX_4).

Quando gluNurbsCurve viene visualizzato tra una coppiagluBeginTrim gluEndTrim/, descrive una curva di taglio su una superficie NURBS. Se il tipo è GLU_MAP1_TRIM_2, descrive una curva nello spazio dei parametri bidimensionali (u e v). Se è GLU_MAP1_TRIM_3, descrive una curva nello spazio dei parametri omogenei (u, v e w). Per altre discussioni sulle curve di taglio, vedere gluBeginTrim.

Esempio

Le funzioni seguenti eseguono il rendering di una curva NURBS con trame normali:

gluBeginCurve(nobj); 
    gluNurbsCurve(nobj, ..., GL_MAP1_TEXTURE_COORD_2); 
    gluNurbsCurve(nobj, ..., GL_MAP1_NORMAL); 
    gluNurbsCurve(nobj, ..., GL_MAP1_VERTEX_4);  
gluEndCurve(nobj); 

Requisiti

Requisito Valore
Client minimo supportato
Windows 2000 Professional [solo app desktop]
Server minimo supportato
Windows 2000 Server [solo app desktop]
Intestazione
Glu.h
Libreria
Glu32.lib
DLL
Glu32.dll

Vedi anche

gluBeginCurve

gluBeginTrim

gluEndCurve

gluEndTrim

gluNewNurbsRenderer

gluPwlCurve