Condividi tramite


funzione gluNurbsProperty

La funzione gluNurbsProperty imposta una proprietà B-Spline (NURBS) non uniforme.

Sintassi

void WINAPI gluNurbsProperty(
   GLUnurbs *nobj,
   GLenum   property,
   GLfloat  value
);

Parametri

nobj

Oggetto NURBS (creato con gluNewNurbsRenderer).

property

Proprietà da impostare. I valori seguenti sono validi:

Valore Significato
GLU_SAMPLING_TOLERANCE
Specifica la lunghezza massima, in pixel, da utilizzare quando il metodo di campionamento è impostato su GLU_PATH_LENGTH. Il valore predefinito è 50,0 pixel.
GLU_DISPLAY_MODE
Il parametro value definisce la modalità di rendering di una superficie NURBS. È possibile impostare il valore su GLU_FILL, GLU_OUTLINE_POLYGON o GLU_OUTLINE_PATCH.
GLU_FILL. Il rendering della superficie viene eseguito come set di poligoni. Si tratta del valore predefinito.
GLU_OUTLINE_POLYGON. La libreria NURBS disegna solo i contorni dei poligoni creati dalla tassellatura.
GLU_OUTLINE_PATCH. Vengono disegnati solo i contorni delle patch e delle curve di taglio definite dall'utente.
GLU_CULLING
Il parametro value è un valore booleano. Quando il valore è impostato su GL_TRUE, le curve NURBS i cui punti di controllo si trovano all'esterno del riquadro di visualizzazione corrente vengono rimossi prima della tassellatura. Il valore predefinito è GL_FALSE (perché una curva NURBS non può rientrare interamente all'interno dello scafo convesso dei relativi punti di controllo).
GLU_AUTO_LOAD_MATRIX
Il parametro value è un valore booleano. Se impostato su GL_TRUE, il codice NURBS scarica la matrice di proiezione, la matrice modelview e il viewport dal server OpenGL per calcolare il campionamento e le matrici di culling per ogni curva NURBS di cui viene eseguito il rendering. Per determinare la suddivisione a mosaico di una superficie NURBS in segmenti di linea o poligoni e per eliminare una superficie NURBS, è necessario eseguire il campionamento e il culling per determinare la suddivisione in mosaico di una superficie NURBS all'esterno del viewport.
Se questa modalità è impostata su GL_FALSE, è necessario fornire una matrice di proiezione, una matrice modelview e un viewport per il renderer NURBS da usare per costruire matrici di campionamento e di culling. A tale scopo, è possibile usare la funzione gluLoadSamplingMatrices .
Il valore predefinito per questa modalità è GL_TRUE. La modifica di questa modalità da GL_TRUE a GL_FALSE non influisce sul campionamento e sulle matrici di culling fino a quando non si chiama gluLoadSamplingMatrices.
I parametri di proprietà seguenti sono supportati in GLU versione 1.1 o successiva e non sono validi per GLU versione 1.0: GLU_PARAMETRIC_TOLERANCE, GLU_SAMPLING_METHOD, GLU_U_STEP e GLU_V_STEP.
I parametri di valore seguenti sono supportati in GLU versione 1.1 o successiva e non sono validi per GLU versione 1.0: GLU_PATH_LENGTH, GLU_PARAMETRIC_ERROR e GLU_DOMAIN_DISTANCE.
GLU_PARAMETRIC_TOLERANCE
Specifica la distanza massima, in pixel, da utilizzare quando il metodo di campionamento è impostato su GLU_PARAMETRIC_ERROR. Il valore predefinito è 0,5.
GLU_SAMPLING_METHOD
Specifica come tassellare una superficie NURBS. GLU_SAMPLING_METHOD può avere uno dei tre valori seguenti.
GLU_PATH_LENGTH. Il valore predefinito. Specifica che le superfici di cui viene eseguito il rendering con la lunghezza massima, in pixel, dei bordi dei poligoni a mosaico non sono maggiori del valore specificato da GLU_SAMPLING_TOLERANCE.
GLU_PARAMETRIC_ERROR. Specifica che per il rendering della superficie, il valore di GLU_PARAMETRIC_TOLERANCE specifica la distanza massima, in pixel, tra i poligoni a mosaico e le superfici approssimative.
GLU_DOMAIN_DISTANCE. Specifica, nelle coordinate parametriche, il numero di punti campione per ogni lunghezza di unità da accettare nelle dimensioni u e v .
GLU_U_STEP
Specifica il numero di punti campione per lunghezza unità rilevata lungo la dimensione u nelle coordinate parametriche. Il valore di GLU_U_STEP viene utilizzato quando GLU_SAMPLING_METHOD è impostato su GLU_DOMAIN_DISTANCE. Il valore predefinito è 100.
GLU_V_STEP
Specifica il numero di punti di campionamento per lunghezza unità rilevata lungo la dimensione v nelle coordinate parametriche. Il valore di GLU_V_STEP viene utilizzato quando GLU_SAMPLING_METHOD è impostato su GLU_DOMAIN_DISTANCE. Il valore predefinito è 100.

value

Valore su cui impostare la proprietà indicata. Il parametro value può essere un valore numerico o uno dei tre valori seguenti: GLU_PATH_LENGTH, GLU_PARAMETRIC_ERROR o GLU_DOMAIN_DISTANCE.

Valore Significato
GLU_PATH_LENGTH
Il valore predefinito. Specifica che le superfici di cui viene eseguito il rendering con la lunghezza massima, in pixel, dei bordi dei poligoni a mosaico non sono maggiori del valore specificato da GLU_SAMPLING_TOLERANCE.
GLU_PARAMETRIC_ERROR
Specifica che per il rendering della superficie, il valore di GLU_PARAMETRIC_TOLERANCE specifica la distanza massima, in pixel, tra i poligoni a mosaico e le superfici approssimative.
GLU_DOMAIN_DISTANCE
Specifica, nelle coordinate parametriche, il numero di punti campione per ogni lunghezza di unità da accettare nelle dimensioni u e v .

Valore restituito

Questa funzione non restituisce un valore.

Commenti

Utilizzare gluNurbsProperty per controllare le proprietà archiviate in un oggetto NURBS. Queste proprietà influiscono sulla modalità di rendering di una curva NURBS.

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

gluGetNurbsProperty

gluGetString

gluLoadSamplingMatrices

gluNewNurbsRenderer