lunedì 10 dicembre 2012

Semplice programma OpenGL

Un semplice programma OpenGL che visualizza un rettangolo colorato in una finestra, mediante la libreria glut, necessaria per utilizzare le funzioni grafiche poligonali.

#include <GL/glut.h>

const int   A = 500;  /* lunghezza della finestra */
const float B = 500;  /* lunghezza dello spostamento del rettangolo */
const float C = 200;  /* lunghezza del quadrato */

void miainiz(void)
{
  glClearColor(0.3, 0.7, 0.7, 0.0); /* sfondo grigio */

  glMatrixMode(GL_PROJECTION);     
  glLoadIdentity();                
  gluOrtho2D( -B/2, B/2, -B/2, B/2);
  glMatrixMode(GL_MODELVIEW);     
}

void mostra( void )
{
                                   
  glClear(GL_COLOR_BUFFER_BIT);    

  glMatrixMode(GL_MODELVIEW);      
  glLoadIdentity();                

  glBegin(GL_POLYGON) ;            
      glColor3f ( 1.0, 0.1, 0.1);      
      glVertex2f( -C/2, -C/2 );      
      glVertex2f(  C/2, -C/2 );       
      glVertex2f(  C/2,  C/2 );        
      glVertex2f( -C/2,  C/2 );       
  glEnd();

  glFlush();                        /* invia tutti i comandi */
}

int main(int argc, char** argv)
{
  glutInit(&argc,argv);
  glutInitWindowSize( A, A );       /* A x A pixel finestra a schermi  */

  glutInitDisplayMode( GLUT_RGB | GLUT_SINGLE);
  glutCreateWindow("Mio rettangolo"); /* titolo finestra                   */
  glutDisplayFunc(mostra);         /* di a OpenGL cosa fare     */
  miainiz();                         /* imposta attributi                 */

  glutMainLoop();                   /* passa controllo a main loop  */
  return 0;
}

Nessun commento:

Posta un commento