|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - xL3aMS1x
Páginas: [1]
1
« en: Lunes 24 de Febrero de 2014, 19:10 »
Hola a todos/as, estoy haciendo un ejercicio y tengo que colocar tres polígonos en fila para poder rotarlos, escalarlos y trasladarlos pero no se como puedo hacer para que se visualicen los tres polígonos en fila de izquierda a derecha.
Este el código que he generado: Utilizo Visual Basic Express 2008 C++
#include <windows.h> #include <GL/gl.h> #include <GL/glu.h> #include <GL/glut.h>
void redimensionar(int ancho, int alto) { glViewport (0,0, (GLint)ancho, (GLint)alto); glMatrixMode(GL_PROJECTION); gluPerspective(35,((float)ancho/alto), 0.1, 1000); }
//---Formacion del Poligono---- void piramide1(void) { glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt(0,3,4,0,0,0,0,1,0); glRotatef(45,0,0,1); //Primera Piramide glBegin(GL_TRIANGLES); glColor3f(1.0, 0.0, 0.0); glVertex3f(0, 0, 1); glVertex3f(1, 0, 1); glVertex3f(1, 1, 1); glEnd(); }
void piramide2(void) { glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt(0,3,4,0,0,0,0,1,0); glRotatef(50,0,0,1);
//Segunda Piramide glBegin(GL_TRIANGLES); glColor3f(0.0, 1.0, 0.0); glVertex3f(1, 0, 0); glVertex3f(0, 1, 0); glVertex3f(0, 0, 0); glEnd(); glutSwapBuffers(); }
//---Adignacion de las teclas---- void teclado(unsigned char key, int x, int y) { if(key==27) exit(0); }
//---Tamaño de la pantalla de visualizacion---- void main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB|GLUT_DEPTH); glutInitWindowSize(640,320); glutCreateWindow("Intro"); //Registrar las Funciones glutKeyboardFunc(teclado); glutDisplayFunc(piramide1); glutDisplayFunc(piramide2); glutReshapeFunc(redimensionar); //Bucle de Eventos Principal glutMainLoop(); }
He intentado hacer dos funciones glutDisplayFunc() pero solo logro que se visualice una no las dos.
Haber si me podeis ayudar. Muchas gracias de antemano.
Un saludo
2
« en: Lunes 24 de Febrero de 2014, 19:06 »
Ya solucione el error gracias a vosotros, Muchas gracias a todos.
3
« en: Viernes 21 de Febrero de 2014, 00:46 »
Probé cambiando la palabra angulo por el grado pero me corre dos errores que son extraños.//--------dibujar------------- void dibujar(void) { glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt(3,2,3,0,0,0,0,1,0); glPushMatrix(); glRotatef(45,0,1,0); Estos son los errores:1>------ Operación Generar iniciada: proyecto: DEMO, configuración: Debug Win32 ------ 1>Compilando... 1>CPP.cpp 1>Vinculando... 1>MSVCRTD.lib(crtexe.obj) : error LNK2019: símbolo externo _main sin resolver al que se hace referencia en la función ___tmainCRTStartup 1>C:\Users\Ismael\SkyDrive (2)\Estudios\App C++, OPENGL y Unity\OpenGL\Tema 2\DEMO\Debug\DEMO.exe : fatal error LNK1120: 1 externos sin resolver 1>El registro de compilación se guardó en el "file://c:\Users\Ismael\SkyDrive (2)\Estudios\App C++, OPENGL y Unity\OpenGL\Tema 2\DEMO\DEMO\Debug\BuildLog.htm" 1>DEMO - 2 errores, 0 advertencias ========== Generar: 0 correctos, 1 incorrectos, 0 actualizados, 0 omitidos ========== Muchas gracias de nuevo, un saludo
4
« en: Viernes 21 de Febrero de 2014, 00:05 »
Me podrías especificar algo mas o poner un ejemplo es que soy muy novato. Intente no int, char y nada. Se que tengo que declarar que angulo hace referencia a glRotatef pero no soy capaz. Intentare averiguar lo que me dijiste en el anterior mensaje. Muchas gracias por responder
5
« en: Jueves 20 de Febrero de 2014, 22:11 »
Hola a todos/as miren tengo un prblema a la hora de copilar un ejercicio.
Es es el codigo:#include <windows.h> #include <GL/gl.h> #include <GL/glu.h> #include <GL/glut.h> //--------inicializacion------ void init(void) { glClearColor(0.0,0.0,0.0,0.0); glEnable(GL_DEPTH_TEST); glShadeModel(GL_FLAT); } //--------dibujar------------- void dibujar(void) { glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); gluLookAt(3,2,3,0,0,0,0,1,0); glPushMatrix(); glRotatef(angulo, 0,1,0); //---primera cara---- glBegin(GL_POLYGON); glColor3f(1.0,0.0,0.0); glVertex3f(0,0,1); glVertex3f(1,0,1); glVertex3f(1,1,1); glVertex3f(0,1,1); glEnd(); //---segunda cara---- glBegin(GL_POLYGON); glColor3f(0.0,1.0,0.0); glVertex3f(1,0,0); glVertex3f(0,0,0); glVertex3f(0,1,0); glVertex3f(1,1,0); glEnd(); //---tercera cara---- glBegin(GL_POLYGON); glColor3f(0.0,0.0,1.0); glVertex3f(0,0,0); glVertex3f(0,0,1); glVertex3f(0,1,1); glVertex3f(0,1,0); glEnd(); //---cuarta cara----- glBegin(GL_POLYGON); glColor3f(1.0,0.0,1.0); glVertex3f(0,1,1); glVertex3f(1,1,1); glVertex3f(1,1,0); glVertex3f(0,1,0); glEnd(); //---quinta cara----- glBegin(GL_POLYGON); glColor3f(1.0,0.0,1.0); glVertex3f(0,0,1); glVertex3f(1,0,1); glVertex3f(1,0,0); glVertex3f(0,0,0); glEnd(); //---sexta cara----- glBegin(GL_POLYGON); glColor3f(0.5,0.5,0.5); glVertex3f(1,0,1); glVertex3f(1,0,0); glVertex3f(1,1,0); glVertex3f(1,1,1); glEnd(); glPopMatrix(); glutSwapBuffers(); } Y esta la solucion: 1>Compilando... 1>CPP.cpp 1>c:\users\ismael\skydrive (2)\estudios\app c++, opengl y unity\opengl\tema 2\demo\demo\cpp.cpp(23) : error C2065: 'angulo' : identificador no declarado 1>El registro de compilación se guardó en el "file://c:\Users\Ismael\SkyDrive (2)\Estudios\App C++, OPENGL y Unity\OpenGL\Tema 2\DEMO\DEMO\Debug\BuildLog.htm" 1>DEMO - 1 errores, 0 advertencias ========== Generar: 0 correctos, 1 incorrectos, 0 actualizados, 0 omitidos ========== No logro declarar "angulo" sin que me corra otros errores que no entiendo. ¿Como puedo hacer que copile correctamente, aunque sea con advertencias.?
Muchas gracias y un saludo
Páginas: [1]
|
|
|