MANEJO DE PATRONES.
El siguiente programa dibuja una letra “M” en un patrón de
16x16 bits.
//#include <GL/freeglut.h>
#include <windows.h>
#include <gl\glut.h>
#include <cstdlib>
#include <iostream>
using namespace std;
unsigned char letraM[ ] ={
0xFC, 0x0F, 0x78, 0x0E, 0x78, 0x0E, 0x78, 0x0E,
0x78, 0x8E, 0x79, 0x8E, 0x79, 0x8E, 0x7B, 0xCE,
0x7F, 0xEE, 0x7F, 0xFE, 0x7F, 0xFE, 0x7E, 0x7E,
0x7C, 0x3E, 0x78, 0x1E, 0xF0, 0x0E, 0xF0, 0x07
};
void Inicializa(void)
{ glClearColor (0.1, 0.3, 0.4, 0.0);
glMatrixMode (GL_PROJECTION);
gluOrtho2D (0.0, 40.0, 0.0, 40.0);
}
// Color de la ventana
void MatrizBitMap(void)
{ glClear (GL_COLOR_BUFFER_BIT);
glColor3f(1.0,1.0,1.0); glRasterPos2i(0,0); glBitmap(16,16,0.0,0.0,0.0,0.0,letraM);
glColor3f(0.0,1.0,1.0); glRasterPos2i(10,10); glBitmap(16,16,0.0,0.0,0.0,0.0,letraM);
glColor3f(0.0,0.0,1.0); glRasterPos2i(20,30); glBitmap(16,16,0.0,0.0,0.0,0.0,letraM);
glFlush();
}
int main(int argc, char *argv[])
{ glutInit(&argc, argv);
glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB );
glutInitWindowPosition (50, 100);
glutInitWindowSize (800,600);
glutCreateWindow ("Un Ejemplo de un programa en OpenGL");
Inicializa();
glutDisplayFunc(MatrizBitMap);
glutMainLoop();
system("PAUSE");
return EXIT_SUCCESS;
}
RESULTADO.