Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
OpenGL non supporta la libreria della sfera IRIS GL. È possibile sostituire le chiamate della libreria sphere con routine quadriche dalla libreria GLU. Per altre informazioni sulla libreria GLU, vedere Open GL Programming Guide e OpenGL Utility Library.
Nella tabella seguente sono elencate le funzioni quadrics OpenGL.
Funzione OpenGL | Significato |
---|---|
gluNewQuadric | Crea un nuovo oggetto quadrico. |
gluDeleteQuadric | Elimina un oggetto quadrico. |
gluQuadricCallback | Associa un callback a un oggetto quadrico per la gestione degli errori. |
gluQuadricNormals | Specifica le normali: nessuna normale, una per faccia o una per vertice. |
gluQuadricOrientation | Specifica la direzione delle normali: verso l'esterno o verso l'interno. |
gluQuadricTexture | Attiva o disattiva la generazione delle coordinate della trama. |
gluQuadricDrawstyle | Specifica lo stile di disegno: poligoni, linee, punti e così via. |
gluSphere | Disegna una sfera. |
gluCylinder | Disegna un cilindro o un cono. |
gluPartialDisk | Disegna un arco. |
gluDisk | Disegna un cerchio o un disco. |
È possibile usare un oggetto quadrico per tutti i quadrichi di cui si vuole eseguire il rendering in modi simili. Nell'esempio di codice seguente vengono usati due oggetti quadrichi per disegnare quattro quadrichi, due con trama.
GLUquadricObj *texturedQuad, *plainQuad;
texturedQuad = gluNewQuadric(void);
gluQuadricTexture(texturedQuad, GL_TRUE);
gluQuadricOrientation(texturedQuad, GLU_OUTSIDE);
gluQuadricDrawStyle(texturedQuad, GLU_FILL);
plainQuad = gluNewQuadric(void);
gluQuadricDrawStyle(plainQuad, GLU_LINE);
glColor3f (1.0, 1.0, 1.0);
gluSphere(texturedQuad, 5.0, 20, 20);
glTranslatef(10.0, 10.0, 0.0);
gluCylinder(texturedQuad, 2.5, 5, 5, 10, 10);
glTranslatef(10.0, 10.0, 0.0);
gluDisk(plainQuad, 2.0, 5.0, 10, 10);
glTranslatef(10.0, 10.0, 0.0);
gluSphere(plainQuad, 5.0, 20, 20);