codigo
#include <GL/glut.h>
GLfloat anguloCuboX = 0.0f;
GLfloat anguloCuboY = 0.0f;
GLfloat anguloEsfera = 0.0f;
GLint ancho=500;
GLint alto=500;
GLfloat anguloCuboX = 0.0f;
GLfloat anguloCuboY = 0.0f;
GLfloat anguloEsfera = 0.0f;
GLint ancho=500;
GLint alto=500;
void reshape(int width, int height)
{
glViewport(0, 0, width, height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-4,4, -4, 4, 1, 10);
glMatrixMode(GL_MODELVIEW);
ancho = width;
alto = height;
}
void drawCube(void)
{
ancho = width;
alto = height;
}
void drawCube(void)
{
glClear(GL_COLOR_BUFFER_BIT);
//CARA atras
glShadeModel(GL_SMOOTH);
glBegin(GL_TRIANGLES);
glColor3f(1.0,0.0,0.0);
glVertex3d(1.5,0,1.5);
glColor3f(0.0,1.0,0.0);
glVertex3d(0,3,0);
glColor3f(0.0,0.0,1.0);
glVertex3d(-1.5,0,1.5);
glEnd();
//CARA2
glShadeModel(GL_SMOOTH);
glBegin(GL_TRIANGLES);
glColor3f(1.0,0.0,0.0);
glVertex3d(-1.5,0,1.5);
glColor3f(0.0,1.0,0.0);
glVertex3d(0,3,0);
glColor3f(0.0,0.0,1.0);
glVertex3d(-1.5,0,-1.5);
glEnd();
//CARA frente
glShadeModel(GL_SMOOTH);
glBegin(GL_TRIANGLES);
glColor3f(1.0,0.0,0.0);
glVertex3d(-1.5,0,-1.5);
glColor3f(0.0,1.0,0.0);
glVertex3d(0,3,0);
glColor3f(0.0,0.0,1.0);
glVertex3d(1.5,0,-1.5);
glEnd();
glColor3f(1.0,0.0,0.0);
glVertex3d(-1.5,0,-1.5);
glColor3f(0.0,1.0,0.0);
glVertex3d(0,3,0);
glColor3f(0.0,0.0,1.0);
glVertex3d(1.5,0,-1.5);
glEnd();
//CARA4
glShadeModel(GL_SMOOTH);
glBegin(GL_TRIANGLES);
glColor3f(1.0,0.0,0.0);
glVertex3d(-1.5,0,1.5);
glColor3f(0.0,1.0,0.0);
glVertex3d(0,3,0);
glColor3f(0.0,0.0,1.0);
glVertex3d(1.5,0,1.5);
glEnd();
//CARA5
glColor3f(1.0,0.0,1.0);
glBegin(GL_POLYGON);
glVertex3d(-1.5,0,1.5);
glVertex3d(1.5,0,1.5);
glVertex3d(-1.5,0,-1.5);
glVertex3d(1.5,0,-1.5);
glEnd();
glFlush();
}
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(0.0f, 0.0f, -5.0f);
glRotatef(anguloCuboY, 0.0f, 1.0f, 0.0f);
drawCube();
glLoadIdentity();
glTranslatef(0.0f, 0.0f, -5.0f);
glTranslatef(3.0f, 0.0f, 0.0f);
glFlush();
glutSwapBuffers();
anguloCuboX+=0.1f;
anguloCuboY+=0.1f;
anguloEsfera+=0.2f;
}
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
glTranslatef(0.0f, 0.0f, -5.0f);
glRotatef(anguloCuboY, 0.0f, 1.0f, 0.0f);
drawCube();
glLoadIdentity();
glTranslatef(0.0f, 0.0f, -5.0f);
glTranslatef(3.0f, 0.0f, 0.0f);
glFlush();
glutSwapBuffers();
anguloCuboX+=0.1f;
anguloCuboY+=0.1f;
anguloEsfera+=0.2f;
}
void init()
{
glClearColor(0,0,0,0);
glEnable(GL_DEPTH_TEST);
ancho = 400;
alto = 400;
}
{
glClearColor(0,0,0,0);
glEnable(GL_DEPTH_TEST);
ancho = 400;
alto = 400;
}
void idle()
{
display();
}
{
display();
}
int main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutInitWindowPosition(100, 100);
glutInitWindowSize(ancho, alto);
glutCreateWindow("PIRAMIDE");
init();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutIdleFunc(idle);
glutMainLoop();
return 0;
}
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutInitWindowPosition(100, 100);
glutInitWindowSize(ancho, alto);
glutCreateWindow("PIRAMIDE");
init();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutIdleFunc(idle);
glutMainLoop();
return 0;
}
No hay comentarios:
Publicar un comentario