funzione glFrustum
La funzione glFrustum moltiplica la matrice corrente per una matrice prospettica.
Sintassi
void WINAPI glFrustum(
GLdouble left,
GLdouble right,
GLdouble bottom,
GLdouble top,
GLdouble zNear,
GLdouble zFar
);
Parametri
-
Sinistra
-
Coordinata per il piano di ritaglio verticale sinistro.
-
va bene
-
Coordinata per il piano di ritaglio verticale destro.
-
Fondoschiena
-
Coordinata per il piano di ritaglio orizzontale inferiore.
-
top
-
Coordinata per il piano di ritaglio orizzontale inferiore.
-
zNear
-
Distanze del piano di ritaglio vicino alla profondità. Deve essere positivo.
-
zFar
-
Distanze dei piani di ritaglio di profondità. Deve essere positivo.
Valore restituito
Questa funzione non restituisce un valore.
Codici di errore
I codici di errore seguenti possono essere recuperati dalla funzione glGetError .
Nome | Significato |
---|---|
|
zNear o zFar non era postiva. |
|
La funzione è stata chiamata tra una chiamata a glBegin e la chiamata corrispondente a glEnd. |
Commenti
La funzione glFrustum descrive una matrice prospettica che produce una proiezione prospettica. I parametri (sinistra, inferiore, zNear) e (destra, superiore, zNear) specificano rispettivamente i punti sul piano di ritaglio vicino mappato agli angoli inferiore sinistro e superiore destro della finestra, presupponendo che l'occhio si trovi in (0,0,0). Il parametro zFar specifica la posizione del piano di ritaglio lontano. Sia zNear che zFar devono essere positivi. La matrice corrispondente è illustrata nell'immagine seguente.
La funzione glFrustum moltiplica la matrice corrente per questa matrice, con il risultato che sostituisce la matrice corrente. Ovvero, se M è la matrice corrente e F è la matrice prospettica frustum, glFrustum sostituisce M con M F.
Usare glPushMatrix e glPopMatrix per salvare e ripristinare lo stack di matrici corrente.
La precisione del buffer di profondità è influenzata dai valori specificati per zNear e zFar. Maggiore è il rapporto tra zFar e zNear , meno efficace sarà il buffer di profondità a distinguere tra le superfici vicine. Se
circa 2 (r) bit di precisione del buffer di profondità vengono persi. Poiché r si avvicina all'infinito perché zNear si avvicina a zero, non è mai consigliabile impostare zNear su zero.
Le funzioni seguenti recuperano informazioni su glFrustum:
glGet con argomento GL_MATRIX_MODE
glGet con argomento GL_MODELVIEW_MATRIX
glGet con argomento GL_PROJECTION_MATRIX
glGet con argomento GL_TEXTURE_MATRIX
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows 2000 Professional [solo app desktop] |
Server minimo supportato |
Windows 2000 Server [solo app desktop] |
Intestazione |
|
Libreria |
|
DLL |
|