
#ifdef __APPLE__
#include <GLUT/glut.h>
#else
#include <GL/glut.h>
#endif
#include <math.h>
void cuadro(float a,float b,int tam)
{
glBegin(GL_QUADS);
glVertex2f(a,b);
glVertex2f(a,b+tam);
glVertex2f(a+tam,b+tam);
glVertex2f(a+tam,b);
glEnd();
}
void goku()
{
glColor3f(.89,0.76,0.58);//Base del cuerpo (cara y cuello)
cuadro(-4,-7,9);
cuadro(-6,0,13);
glColor3f(0,0,0);//ojos boca
cuadro(0,0,1);
cuadro(1,0,1);
cuadro(-1,0,1);
cuadro(3,2,2);
cuadro(-4,2,2);
glColor3f(0,0,0);//cabello
cuadro(6,0,2);
cuadro(7,2,4);
cuadro(5,6,4);
cuadro(4,7,3);
cuadro(2,8,3);
cuadro(7,7,4);
cuadro(11,9,1);
cuadro(-4,7,6);
cuadro(-7,7,5);
cuadro(-8,9,4);
cuadro(-9,11,2);
cuadro(-10,12,1);
cuadro(-1,4,1);
cuadro(-2,5,3);
cuadro(-3,6,4);
cuadro(2,4,1);
cuadro(3,5,1);
cuadro(4,5,1);
cuadro(5,5,1);
cuadro(-8,4,4);
cuadro(-7,1,3);
cuadro(-6,0,2);
cuadro(-8,2,1);
cuadro(-4,9,5);
cuadro(-5,14,3);
cuadro(-3,14,2);
cuadro(-6,16,1);
cuadro(-1,14,1);
glColor3f(1,1,1);//Sobrante blanco
cuadro(7,0,1);
cuadro(9,2,2);
cuadro(8,3,1);
cuadro(10,4,1);
cuadro(10,7,1);
cuadro(-5,12,1);
cuadro(2,11,5);
cuadro(5,10,2);
glColor3f(.89,0.76,0.58);//carne faltante
cuadro(-5,4,1);
cuadro(-5,0,2);
cuadro(-6,2,2);
cuadro(-5,-7,2);
cuadro(4,-7,2);
glColor3f(.99,.48,.24);//naranja
cuadro(-3,-3,2);
cuadro(-2,-7,5);
cuadro(-3,-9,3);
cuadro(0,-8,1);
cuadro(1,-9,3);
cuadro(2,-3,2);
glColor3f(.25,.4,.59);//azul
cuadro(4,-2,1);
cuadro(3,-3,1);
cuadro(0,-4,1);
cuadro(-4,-2,1);
cuadro(-3,-3,1);
cuadro(-1,-3,1);
cuadro(0,-3,1);
cuadro(1,-3,1);
cuadro(-4,-5,1);
cuadro(-3,-5,1);
cuadro(3,-5,1);
cuadro(4,-5,1);
cuadro(-2,-6,1);
cuadro(-1,-6,1);
cuadro(0,-6,1);
cuadro(1,-6,1);
cuadro(2,-6,1);
cuadro(-4,-12,2);
cuadro(-3,-12,3);
cuadro(1,-12,3);
cuadro(3,-12,2);
glColor3f(.47,.09,.121);//Rojo
cuadro(-4,-12,1);
cuadro(-3,-11,1);
cuadro(-2,-10,1);
cuadro(4,-12,1);
cuadro(3,-11,1);
cuadro(2,-10,1);
}
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
goku();
glFlush();
}
int main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowPosition(500,100);
glutInitWindowSize(400, 400);
glutCreateWindow("Tarea 3");
gluOrtho2D(-16, 17, -15, 20);
glLineWidth(5);
//glPointSize(10);
glClearColor(1.0,1.0,1.0,0);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
No hay comentarios.:
Publicar un comentario