Transformaciones con OpenGL
|
|
- María Luz Herrero Venegas
- hace 5 años
- Vistas:
Transcripción
1 Transformaciones con OpenGL
2 Pipeline:Transformaciones
3 Transformaciones! Las operaciones con matrices en OpenGL glmatrixmode( GLenum mode ); mode: GL_MODELVIEW, GL_PROJECTION, GL_TEXTURE Es utilizada para definir las coordenadas de vision, se asigna una matriz de 4x4 De igual manera, se define la proyección, como la imagen es proyectada sobre la pantalla, una matriz de 4X4
4 Transformaciones! Una alternativa, podemos asignar otros valores a los elementos de una matriz glloadidentity(); La matriz inicial, una matriz identidad de 4x4 glloadmatrix{f,d}( const TYPE* m ); glmultmatrix{f,d}( const TYPE* m ); glpushmatrix(); glpopmatrix(); Las operaciones de stack son muy utiles para construir estructuras jerarquicas. Ejemplo Hacer el render de un carro con cuatro ruedas
5 ! glloadmatrix*( element16); glmatrixmode(gl_modelview); glfloat elems[16]; GLint k; for( k=0; k<16; k++) elems [k] = float (k); glloadmatrixf(elems);
6 M=
7 Composicion de Matrices! glmultmatrix*(otroelements16); M= MxM1 glmatrixmode(gl_modelview); glloadidentity( ); glmultmatrixf( elemsm2); glmultmatrixf( elemsm1); M=M2xM1
8 Transformaciones! OpenGL ofrece transformaciones preconstruidas : gltranslate{f,d}( TYPE x, TYPE, y, TYPE z ); Efecto de gltranslate()
9 Transformationes glrotate{f,d}( TYPE angle, TYPE x, TYPE y, TYPE z ); Efecto de glrotatef(45.0, 0.0, 0.0, 1.0)
10 Transformaciones glscale{f,d}( TYPE x, TYPE y, TYPE z); El efecto de glscalef(2.0, -0.5, 1.0)
11 Transformaciones! Rotando primero o Translación primero :
12 Transformaciones! Transformaciones de Visión Hay que seleccionar un sistema de Visión o de Camara Center-orientation-up system Aplicando glulookat.» glulookat( cx, cy, cz, atx, aty, atz, upx, upy, upz );» ( cx, cy, cz ) es la ubicación de la cámara» ( atx, aty, atz ) hacia donde ve la cámara» ( upx, upy, upz ) es el vector de orientación de la cámara Coordenadas Polares
13 Transformaciones! Transformaciones de Proyección: Proyección en Perspectiva glfrustum( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far );
14 Transformaciones gluperspective( GLdouble fovy, GLdouble aspect, GLdouble near, GLdouble far );
15 Transformaciones! Transformación de Proyección: Proyección Ortogonal (Orthogonal projection) glortho( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far ); gluortho2d( GLdouble left, GLdouble right, GLdouble bottom, GLdouble top );
16 Transformaciones! Transformación de Viewport glviewport( GLint x, GLint y, GLsizei w, GLsizei h );
17 Transformaciones! Nota: Por default, el observador esta situado en el origen, y mira hacia el eje negativo del eje-z
18 Ejemplo
19 Rotando un cubo con Interpolacion de Color #include <stdlib.h> #include <GL/glut.h> GLfloat vertices[][3] = {{-1.0,-1.0,-1.0}, {1.0,-1.0,-1.0}, {1.0,1.0,-1.0}, {-1.0,1.0,-1.0}, {-1.0,-1.0,1.0}, {1.0,-1.0,1.0}, {1.0,1.0,1.0}, {-1.0,1.0,1.0}}; GLfloat colors[][3] = {{0.0,0.0,0.0},{1.0,0.0,0.0}, {1.0,1.0,0.0}, {0.0,1.0,0.0}, {0.0,0.0,1.0}, {1.0,0.0,1.0}, {1.0,1.0,1.0}, {0.0,1.0,1.0}};
20 void polygon(int a, int b, int c, int d) { /* draw a polygon via list of vertices */ glbegin(gl_polygon); glcolor3fv(colors[a]); glvertex3fv(vertices[a]); glcolor3fv(colors[b]); glvertex3fv(vertices[b]); glcolor3fv(colors[c]); glvertex3fv(vertices[c]); glcolor3fv(colors[d]); glvertex3fv(vertices[d]); glend(); }
21 void colorcube() { /* map vertices to faces */ polygon(0,3,2,1); polygon(2,3,7,6); polygon(0,4,7,3); polygon(1,2,6,5); polygon(4,5,6,7); polygon(0,1,5,4); }
22 static GLfloat theta[] = {0.0,0.0,0.0}; static GLint axis = 2; void display() { /* display callback, clear frame buffer and z buffer, rotate cube and draw, swap buffers */ glclear(gl_color_buffer_bit GL_DEPTH_BUFFER_BIT); glloadidentity(); glrotatef(theta[0], 1.0, 0.0, 0.0); glrotatef(theta[1], 0.0, 1.0, 0.0); glrotatef(theta[2], 0.0, 0.0, 1.0); colorcube(); glflush(); glutswapbuffers(); }
23 void spincube() { /* idle callback, spin cube 2 degrees about selected axis */ theta[axis] += 2.0; if( theta[axis] > ) theta[axis] -= 360.0; /* display(); */ glutpostredisplay(); } void mouse(int btn, int state, int x, int y) { /* mouse callback, selects an axis about which to rotate */ if(btn==glut_left_button && state == GLUT_DOWN) axis = 0; if(btn==glut_middle_button && state == GLUT_DOWN) axis = 1; if(btn==glut_right_button && state == GLUT_DOWN) axis = 2; }
24 void myreshape(int w, int h) { glviewport(0, 0, w, h); } glmatrixmode(gl_projection); glloadidentity(); if (w <= h) glortho(-2.0, 2.0, -2.0 * (GLfloat) h / (GLfloat) w, 2.0 * (GLfloat) h / (GLfloat) w, -10.0, 10.0); else glortho(-2.0 * (GLfloat) w / (GLfloat) h, 2.0 * (GLfloat) w / (GLfloat) h, -2.0, 2.0, -10.0, 10.0); glmatrixmode(gl_modelview);
25 int main(int argc, char **argv) { glutinit(&argc, argv); /* need both double buffering and z buffer */ } glutinitdisplaymode(glut_double GLUT_RGB GLUT_DEPTH); glutinitwindowsize(500, 500); glutcreatewindow("colorcube"); glutreshapefunc(myreshape); glutdisplayfunc(display); glutidlefunc(spincube); glutmousefunc(mouse); glenable(gl_depth_test); /* Enable hidden-surface removal */ glutmainloop();
26
27 Ejemplo! planet.c Control: d y a A ESC
28 #include <GL/glut.h> static GLfloat year=0.0f, day=0.0f; void init() { glclearcolor(0.0, 0.0, 0.0, 0.0); } void GL_reshape(GLsizei w, GLsizei h) // GLUT reshape function { glviewport(0, 0, w, h); // viewport transformation glmatrixmode(gl_projection); // projection transformation glloadidentity(); gluperspective(60.0, (GLfloat)w/(GLfloat)h, 1.0, 20.0); glmatrixmode(gl_modelview); // viewing and modeling transformation glloadidentity(); glulookat(0.0, 3.0, 5.0, // eye 0.0, 0.0, 0.0, // center 0.0, 1.0, 0.0); // up }
29 void GL_display() // GLUT display function { // clear the buffer glclear(gl_color_buffer_bit); } glcolor3f(1.0, 1.0, 1.0); glpushmatrix(); glutwiresphere(1.0, 20, 16); // the Sun glrotatef(year, 0.0, 1.0, 0.0); gltranslatef(3.0, 0.0, 0.0); glrotatef(day, 0.0, 1.0, 0.0); glutwiresphere(0.5, 10, 8); // the Planet glpopmatrix(); // swap the front and back buffers glutswapbuffers();
30 void GL_idle() // GLUT idle function { day += 10.0; if(day > 360.0) day -= 360.0; year += 1.0; if(year > 360.0) year -= 360.0; } // recall GL_display() function glutpostredisplay();
31 void GL_keyboard(unsigned char key, int x, int y) // GLUT keyboard function { switch(key) { case 'd': day += 10.0; if(day > 360.0) day -= 360.0; glutpostredisplay(); break; case 'y': year += 1.0; if(year > 360.0) year -= 360.0; glutpostredisplay(); break; case 'a': glutidlefunc(gl_idle); // assign idle function break; case 'A': glutidlefunc(0); break; case 27: exit(0); } }
32 int main(int argc, char** argv) { glutinit(&argc, argv); } glutinitwindowsize(500, 500); glutinitwindowposition(0, 0); glutinitdisplaymode(glut_double GLUT_RGB); glutcreatewindow("planet"); init(); glutdisplayfunc(gl_display); glutreshapefunc(gl_reshape); glutkeyboardfunc(gl_keyboard); glutmainloop(); return 0;
33
34 Tarea
35 ! Para poder ejecutar el código que simula un perro corriendo, el código esta en la carpeta C-Dog ubicada en el sitio del curso. Enfocarse en las transformaciones en el código proporcionado.! La tarea consiste en modificar el movimiento del perro para que pueda correr de manera mas adecuada! Fecha de entrega 30 de marzo
36 Preguntas?
Proyecciones en OpenGL
Proyecciones en OpenGL Una vez definida una escena en coordenadas del mundo, tenemos que tomar la foto. Para esto, tenemos que hacer dos cosas: colocar la cámara en el mundo (o sea, en la escena) y definir
Más detallesSean los vectores a = (4, -2, 3) y b = (3, 2, 1), y sean las operaciones siguientes: ( 3, 2,1) ( 33, 22,11)
Betanzo Vásquez Erick Manuel. Tarea # 1. Computación Gráfica. Ejemplos matemáticos: Sean los vectores a = (4, -2, 3) y b = (3, 2, 1), y sean las operaciones siguientes: Producto punto ( 4, 2,3) i( 3, 2,1)
Más detallesPROYECTO 2 TARJETA SPARTAN 3 ELABORADO POR MIRANDA PINEDA HECTOR DANIEL. include <openglut.h> #include <stdio.h>
PROYECTO 2 TARJETA SPARTAN 3 ELABORADO POR MIRANDA PINEDA HECTOR DANIEL include #include GLfloat light_ambient [4] = 0.4, 0.4, 0.4, 1.0; GLfloat light_diffuse [4] = 0.7, 0.7, 0.7,
Más detallesGràfics per computador
Gràfics per computador Departament de Sistemas Informàtics i Computació Escola Politècnica Superior d Alcoi Enginyeria Tècnica en Informàtica de Gestió PRÀCTICA 3 Jordi Linares i Pellicer jlinares@dsic.upv.es
Más detallesLa matriz de proyección especifica el tamaño y forma del volumen de visualización (0,100,1)
Proyecciones Proyecciones La matriz de proyección especifica el tamaño y forma del volumen de visualización glmatrixmode(gl_projection); // reseteamos la matriz glloadidentity(); // actualizamos la matriz
Más detalles1. INTRODUCCIÓN A OPENGL: DIBUJANDO UNA TORTUGA CON OPENGL
1. INTRODUCCIÓN A OPENGL: DIBUJANDO UNA TORTUGA CON OPENGL 1.1 QUÉ ES OPENGL? Qué es OpenGL? OpenGL es una interfaz software de harware gráfico, es decir define las funciones que se pueden utilizar en
Más detallesglclearcolor (1.0, 0.0, 0.0, 0.0); glclear(gl_color_buffer_bit GL_DEPTH_BUFFER_BIT);
10. EL MAPEADO DE TEXTURAS Hasta ahora las primitivas se han dibujado en OpenGL con un solo color o interpolando varios colores entre los vértices de una primitiva. OpenGL dispone de funciones específicas
Más detallesIntroducción. Los principales conceptos que se utilizaran con mayor frecuencia:
Mini Manual de OpenAL Por Daniel Barrero (dbarrero@cable.net.co) - 22/4/2002 Basado en los excelentes tutoriales de: Jorge bernal Martinez (lordloki@users.berlios.de, http://worldspace.berlios.de/openal/index.html)
Más detallesOpenGL 1. Visualización 3D. Cristina Cañero
OpenGL 1. Visualización 3D Cristina Cañero Introducción OpenGL es una librería de funciones, y se puede llamar desde C. Es transparente al hardware de gráficos disponible. Tres librerías: OpenGL GLU GLUT
Más detalles3.- Vista Tridimensional.
3.- Vista Tridimensional. 3.1.- Proceso de vista 3D 3.2.- Comandos de transformaciones de propósito general 3.3.- Transformaciones de modelo y vista 3.4.- Transformaciones de proyección 3.5.- Transformaciones
Más detallesEjemplos de aplicaciones 3D interactivas con OpenGL
Ejemplos de aplicaciones 3D interactivas con OpenGL Apellidos, nombre Departamento Centro Agustí i Melchor, Manuel (magusti@disca.upv.es) Departamento de Informática de Sistemas y Computadores (DISCA)
Más detallesUNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA POZAS MONTOYA KARLA JOSSAVET PROYECTO EFECTO COMPTON
EFECTO COMPTON OBJETIVO: QUE EL ALUMNO PUEDA IMPLEMENTAR TODOS LOS CONOCIMIENTOS APRENDIDOS DURANTE EL CURSO PARA PODER REALIZAR UNA ANIMACIÓN QUE CONLLEVE TODO LO VISTO DURANTE EL CURSO. OBJETIVO 1: ACOPLAR
Más detallesOpenGL. Domingo Martín Perandrés
Domingo Martín Perandrés Qué es? Open Graphics Library Una interfaz con el hardware gráfico Arquitectura cliente/servidor Independiente del hardware Un conjunto de funciones que permiten definir, crear
Más detallesTECNUNLOGO: UN LOGO EN TRES DIMENSIONES
tecnunlogo: un logo en tres dimensiones 1 TECNUNLOGO: UN LOGO EN TRES DIMENSIONES Tutorial de OpenGL y manual de las prácticas de OpenGL de la asignatura de Gráficos por Computador y Multimedia http://www.tecnun.es/graficos
Más detallesTAREA EXAMEN 1 ANIMADO. Alumna: Roldán Serrato Karen Lucero Computación Gráfica Grupo: 1
TAREA EXAMEN 1 ANIMADO Alumna: Roldán Serrato Karen Lucero Computación Gráfica Grupo: 1 // arananimada.cpp: define el punto de entrada de la aplicación de consola. // // exarana.cpp: define el punto de
Más detalles2. TRANSFORMACIONES: DANDO ÓRDENES A LA TORTUGA (FORWARD, RIGHT, LEFT, UP Y DOWN)
Capítulo 2 1 2. TRANSFORMACIONES: DANDO ÓRDENES A LA TORTUGA (FORWARD, RIGHT, LEFT, UP Y DOWN) En el presente capítulo se introduce el concepto de transformación y de las matrices que las definen, tanto
Más detallesLenguaje de Programación: C++ GLUTTransformaciones
UG Lenguaje de Programación: C++ GLUT Universidad de Guanajuato Noviembre 2010 Lenguaje de Programación: C++ GLUT Como se convierte un vértice en un pixel La cámara desde que visualizaremos el mundo siempre
Más detallesLibrerías gráficas que facilitan el interfaz con el Hw gráfico
Introducción a OpenGL Qué es OpenGL Librerías gráficas que facilitan el interfaz con el Hw gráfico Independiente del Hardware API sencilla, estable y compacta. Primitivas geométricas básicas No incluye
Más detallesGráficos Avanzados. Repaso de Gráficos I
Gráficos Avanzados Repaso de Gráficos I Introducción Veremos los conceptos fundamentales de gráficos con OpenGL aplicado a: Imágenes 2D Sistemas 3D Temas a tratar Términos. Sistemas Gráficos. OpenGL. Pipeline.
Más detallesTransformaciones geométricas en 2D y 3D (Parte II)
Transformaciones geométricas en 2D y 3D (Parte II) Contenido Conmutatividad en transformaciones geométricas Tranformaciones básicas en 3D: rotación, traslación y escalamiento Otras tranformaciones 3D:
Más detallesLenguaje de Programación: C++ GLUT (como instalarlo)
UG C++ Lenguaje de Programación: C++ GLUT (como instalarlo) Universidad de Guanajuato Noviembre 2010 Inicializar GLUT Lo primero que debemos mandar llamar en un proyecto con la librería GLUT es: void glutinit(int
Más detallesOPENGL. Qué es OpenGL? Desarrollo de Aplicaciones Interactivas. API gráfica
OPENGL Desarrollo de Aplicaciones Interactivas Qué es OpenGL? API gráfica Imágenes color de alta calidad compuesta de primitivas geométricas e imágenes Independiente de Sistema de ventanas Sistema operativo
Más detallesMini Manual de OpenGL Por Daniel Barrero (dbarrero@cable.net.co) - 11/6/2002
Mini Manual de OpenGL Por Daniel Barrero (dbarrero@cable.net.co) - 11/6/2002 Introducción OpenGL es una interface de software para el hardware grafico, esta interface consiste de una larga serie de comandos
Más detallesFunciones GLUT para Eventos y Menús
Funciones GLUT para Eventos y Menús Facultad de Cs. de la Computación Juan Carlos Conde Ramírez Computer Graphics Contenido 1 Eventos 2 El Mouse 3 El Teclado 4 Tamaño de Ventana 5 Menús 1 / 23 Contenido
Más detallesTutorial de uso de HAPTIK bajo Windows
Tutorial de uso de HAPTIK bajo Windows Este tutorial ha sido generado gracias al trabajo de María Luisa Pinto Salamanca, de la Universidad Nacional de Colombia Resumen. Se distinguen dos partes: una primera
Más detallesApuntes de OpenGL y GLUT Cristina Cañero Morales
Apuntes de OpenGL y GLUT Cristina Cañero Morales Introducción... 2 Librerías añadidas... 2 De vértices a píxeles... 2 Formato de las funciones... 3 Funciones básicas para definir objetos... 3 Primitivas
Más detallesTutorial de uso de OHAE sobre windows
Tutorial de uso de OHAE sobre windows Este tutorial ha sido generado gracias al trabajo de María Luisa Pinto Salamanca, de la Universidad Nacional de Colombia Resumen. Se distinguen dos partes: una primera
Más detallesGuía resumida de referencia para exámenes
Guía resumida de referencia para exámenes Tabla de referencia de operadores La siguiente tabla contiene algunos operadores que pueden ser sobrecargados (el símbolo # representa a la ubicación del operador
Más detalles3. OPERACIONES CON MATRICES: DIBUJANDO EL CAMINO
3. OPERACIONES CON MATRICES: DIBUJANDO EL CAMINO La transforación de las coordenadas se realiza internaente en OpenGL a partir de las atrices de transforación y de las coordenadas de odelado del objeto.
Más detallesTransformaciones en OpenGL
Transformaciones en OpenGL 1 OpenGL y las bibliotecas asociadas componen por nosotros las transformaciones necesarias para posicionar los objetos, las luces y la cámara en la escena, para luego proyectarlos
Más detallesTema 2. Dibujando en el espacio
Departamento de Tecnologías de la Información Tema 2 Dibujando Ciencias de la Computación e Inteligencia Artificial Índice 2.1 Primitivas geométricas 2.2 Transformaciones geométricas 2.3 Proyecciones 2
Más detallesCoordenadas Homogéneas y Transformaciones
Computación Gráfica I Coordenadas Homogéneas y Transformaciones Daniel Fariña 06-39509 Laura Libretti 06-39796 Transformaciones Las transformaciones se usan para: o Posicionar objetos en escena o Cambiar
Más detallesGraficación por Computadora
Graficación por Computadora Dr. Roberto Núñez González 1 1 Departamento de Matemáticas Ciencias de la Computación Universidad de Sonora 22 de mayo de 2014 Introducción a la Graficación por Computadora
Más detallesCurso de introducción a OpenGL (v1.0)
Por Jorge García (Bardok) Este manual ha sido realizado para el e-ghost, por Jorge García, está sujeto a la licencia FDL (GNU Free Document License), y confiere los derechos y obligaciones pertinentes.
Más detallesNuestro entorno de programación debe darnos una interfaz para llamar a OpenGL desde nuestro código
OpenGL en Windows OpenGL en Windows El sistema operativo debe asumir la interacción con el usuario la gestión de la ventana Nuestro entorno de programación debe darnos una interfaz para llamar a OpenGL
Más detallesUna aproximación a OpenGL
Una aproximación a OpenGL Alberto Jaspe Villanueva Julián Dorado de la Calle 1 Introducción... 4 1.1 Qué es OpenGL?... 4 1.2 OpenGL como una máquina de estados... 4 1.3 El Pipeline de renderizado de OpenGL...
Más detalles1. Introducción--------------------------------------------------------------------------- PAG 1
1. Introducción--------------------------------------------------------------------------- PAG 1 2. Estructura principal del programa: -------------------------------------------- PAG 2 3. Funciones relevantes:
Más detallesINTRODUCCIÓN A OpenGL
INTRODUCCIÓN A OpenGL 1. Introducción...2 2. Abriendo una ventana gráfica para dibujar...2 3. Dibujo de primitivas gráficas...3 4. Tipo de datos de OpenGL...4 5. Estado de OpenGL...5 6. Sistema de Coordenadas...6
Más detallesProyecciones en 3D. Facultad de Cs. de la Computación. Juan Carlos Conde Ramírez. Computer Graphics
Proyecciones en 3D Facultad de Cs. de la Computación Juan Carlos Conde Ramírez Computer Graphics Contenido 1 Introducción 2 Proyecciones 3 Tipos de Proyección 1 / 21 Contenido 1 Introducción 2 Proyecciones
Más detallesLenguaje de Programación: C++ GLUT
UG Lenguaje de Programación: C++ GLUT Universidad de Guanajuato Noviembre 2010 GLUT Se trata de una librería diseñada para facilitar el manejo de ventanas y eventos en aplicaciones que pretenden mostrar
Más detallesGRÁFICOS APUNTES DE OPENGL CURSO Rafael Molina Carmona Juan Antonio Puchol García
GRÁFICOS APUNTES DE OPENGL CURSO 1998-99 Rafael Molina Carmona Juan Antonio Puchol García ALGUNAS CUESTIONES PREVIAS QUÉ ES OPENGL? OpenGL es una librería de modelado y gráficos 3D. Fue desarrollada inicialmente
Más detallesCurso de introducción a OpenGL (v1.1)
Curso de introducción a OpenGL (v1.1) Por Jorge García -aka Bardok (2004)- bardok@telefonica.net - shadow@bardok.net http://www.bardok.net This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Más detallesTema 1 Introducción. David Vallejo Fernández. Curso 2007/2008. Escuela Superior de Informática
Tema 1 Introducción David Vallejo Fernández Curso 2007/2008 Escuela Superior de Informática Índice de contenidos 1.Computer Graphics. 2.Principales aplicaciones. 3.APIs gráficas. 4.. 5.Resumen. 2 1 Computer
Más detallesPractica 3. Cámara. Objetivo: conocer e utilizar adecuadamente la cámara, mediante glulookat.
Cadena Ramírez Miguel Ángel Grupo 4 Practica 3 Cámara Objetivo: conocer e utilizar adecuadamente la cámara, mediante glulookat. Su forma de expresarse es: void glulookat(gldouble eyex, GLdouble eyey, GLdouble
Más detallesCómo saldremos. De aquí saldremos: O de plano es que que no entendimos nada
Cómo saldremos De aquí saldremos: Flipando Alucinando Con la mirada perdida en el infinito Queriendo simular o graficar todo O de plano es que que no entendimos nada Objetivos En este curso se introducirá
Más detalles6. TIPOS DE FUENTES DE LUZ
6. TIPOS DE FUENTES DE LUZ Se puede decidir tener una fuente de luz que sea tratada como si estuviera localizada en infinitamente lejos de la escena o una que sea cercana a la escena. 6.1.1.1. Direccional
Más detalles1. Historia. Introducción a OpenGL
1. Historia OpenGL es un estándar sobre gráficos por computadora. Hoy día es uno de los estándares gráficos más conocido del mundo. En 1982 nació en la Universidad de Standford el concepto de "graphics
Más detallesSistemas de referencia Introducción a OpenGL
Sistemas de referencia Introducción a OpenGL Introducción a la Computación Gráfica Andrea Rueda Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas The implementation principle: If
Más detallesProgramación 3D con OpenGL bajo GNU/Linux. Roberto Garrido Martín (Ro) e-ghost ESIDE's GNU Hi-tech and Open Source Team
Programación 3D con OpenGL bajo GNU/Linux Roberto Garrido Martín (Ro) e-ghost ESIDE's GNU Hi-tech and Open Source Team Índice 1. Introducción 2. OpenGL y GNU/Linux 3. Conceptos básicos sobre OpenGL 4.
Más detallesOpenAL y OpenGL: escuchar y ver el sonido
OpenAL y OpenGL: escuchar y ver el sonido Apellidos, nombre Departamento Centro Agustí i Melchor, Manuel (magusti@disca.upv.es) Departamento de Informática de Sistemas y Computadores (DISCA) Escola Tècnica
Más detalles4. VIENDO LA ESCENA DESDE OTRO PUNTO DE VISTA: CÁMARAS
4. VIENDO LA ESCENA DESDE OTRO PUNTO DE VISTA: CÁMARAS En este capítulo se profundiza en los conceptos de transformaciones de vista y de proyección y se explica con más detalle las funciones de que dispone
Más detallesTransformaciones en OpenGL
Transformaciones en OpenGL Aquí se explican las transformaciones en OpenGL. Se incluyen algunas nociones básicas con la única intención de entender la práctica y de qué estamos hablando. En otro documento
Más detallesEscenarios 3D en OpenGL. Ivan Olmos Pineda
Escenarios 3D en OpenGL Ivan Olmos Pineda Introducción Qué es OpenGL? Estándar creado por Silicon Graphics en 1992 para el diseño de librerias 2D/3D Qué se requiere para programar en OpenGL? Obtener las
Más detallesEs un SW (en forma de librería C) que permite la comunicación entre el programador y el HW de la máquina para el diseño de gráficos.
Qué es Open GL? Es un SW (en forma de librería C) que permite la comunicación entre el programador y el HW de la máquina para el diseño de gráficos. Es portable. Consta de unos 150 comandos muy básicos.
Más detallesMi primera aplicación OpenGL con MFC. Con esta guía rápida, escribiremos nuestra primera aplicación OpenGL con MFC (Microsoft Foundations Class).
Mi primera aplicación OpenGL con MFC Con esta guía rápida, escribiremos nuestra primera aplicación OpenGL con MFC (Microsoft Foundations Class). Ejecutar Visual C++ 6.0 Elegir la opción File del menú para
Más detallesGràfics per computador (Curs 04-05)
Gràfics per computador (Curs 04-05) Departament de Sistemas Informàtics i Computació Escola Politècnica Superior d Alcoi Enginyeria Tècnica en Informàtica de Gestió PRÀCTICA 2 Jordi Linares i Pellicer
Más detallesTema 4: Viendo en 3D
J. Ribelles SIE020: Síntesis de Imagen y Animación Institute of New Imaging Technologies, Universitat Jaume I Contenido Introducción 1 Introducción 2 3 Proyección Paralela Proyección Perspectiva 4 5 6
Más detallesCámara y Proyecciones Paralelas: Ortogonales, Axonométricas y Oblicuas. Integrantes: Fernández, Kevin # Manzanares, Javier #
Cámara y Proyecciones Paralelas: Ortogonales, Axonométricas y Oblicuas. Integrantes: Fernández, Kevin #06-39521 Manzanares, Javier #06-39843 La Cámara La cámara son nuestros ojos virtuales. Todo lo que
Más detalles5.1. AÑADIENDO ILUMINACIÓN A LA ESCENA Los pasos requeridos para añadir iluminación a la escena son los siguientes:
5. ILUMINANDO LA ESCENA En este capítulo se explican las funciones que OpenGL pone a disposición para manejar la iluminación de la escena y a crear, posicionar y dar propiedades a diferentes tipos de luces.
Más detallesViewports e Interacción con el Mouse CG 2014.
Viewports e Interacción con el Mouse CG 2014. Introducción Los vértices sufren transformaciones para pasar del mundo a la pantalla. Estas transformaciones, las especificamos mediante matrices. Ventana
Más detallesIntroducción a la Programación Gráfica con OpenGL
Introducción a la Programación Gráfica con OpenGL Oscar García Alex Guevara Escola Tècnica Superior d Enginyeria Electrònica i Informàtica La Salle Enero 2004 Oscar García - Alex Guevara La Salle 2004
Más detallesLABORATORIO COMPUTACIÓN GRAFICA
UNIVERSIDAD NACIONAL AUTONOMA DE MÉXICO FACULTAD DE INGENIERIA PRACTICA 5. INTERACTIVIDAD LABORATORIO COMPUTACIÓN GRAFICA PROFESORA: M.I. ELIZABETH FONSECA CHAVEZ GRUPO: 4 VAZQUEZ TOUNGATE REYNA CATALINA
Más detallesGRAFICACIÓN OpenGL. Profr. Hilario Salazar Martínez
GRAFICACIÓN OpenGL Profr. Hilario Salazar Martínez librería GLUT Visual C++ 6.0 Introducción La librería GLUT nos permite crear una interfície de ventanas tipo X-Windows. Los programas se pueden compilar
Más detallesDESARROLLO E IMPLEMENTACIÓN DE UNA ARQUITECTURA SOFTWARE DE UN AYUDANTE VIRTUAL
ESCUELA TÉCNICA SUPERIOR DE INGENIEROS INDUSTRIALES DESARROLLO E IMPLEMENTACIÓN DE UNA ARQUITECTURA SOFTWARE DE UN AYUDANTE VIRTUAL TRABAJO DE FIN DE GRADO Juan Ruiz García Tutor 1: Fernando Matía Espada
Más detallesFCC-BUAP GLUT INTRODUCCIÓN
GLUT INTRODUCCIÓN Como paso previo al estudio de OpenGL, vamos a ver los fundamentos de la programación con GLUT. Puesto que el estudio de GLUT no es el objetivo de este curso, veremos solamente los conceptos
Más detallesGeometría Proyectiva. Héctor Navarro
Geometría Proyectiva Héctor Navarro Geometría Proyectiva Es el estudio de propiedades geométricas que son invariantes bajo transformaciones proyectivas Plano proyectivo Si consideramos en el modelo de
Más detallesLaboratorio de Graficación. Garibaldi Pineda García
Laboratorio de Graficación Garibaldi Pineda García chanokin@gmail.com OpenGL API Máquina de estados Implementa un pipeline de visualización 3D OpenGL Básicamente transforma modelos a pixeles Evita que
Más detallesINTRODUCCIÓN A OPENGL. Computación Gráfica
INTRODUCCIÓN A OPENGL Computación Gráfica Introducción a OpenGL OpenGL GLUT - registrar funciones de callback (freeglut o glut) código asociado a eventos en las ventanas. sirven para administrar lo que
Más detallesVertex Arrays (VAs) Vertex Buffer Objects (VBOs), Vertex Array Objects (VAOs) C. Andujar, A. Vinacua Nov 2015
Vertex Arrays (VAs) Vertex Buffer Objects (VBOs), Vertex Array Objects (VAOs) C. Andujar, A. Vinacua Nov 2015 Formes de pintar geometria Mode immediat (glbegin,glend) Compatibility Usant Vertex Arrays
Más detallesLaboratorio de Computación Gráfica.
Practica: Modelado EFCH 2007 Laboratorio de Computación Gráfica. Objetivo 1: Que el alumno comprenda de manera general como se construye un programa básico de opengl. Objetivo 2: Que el alumno sea capaz
Más detallesGraduado en Ingeniería Informática Universidad Politécnica de Madrid Escuela Técnica Superior de Ingenieros Informáticos TRABAJO FIN DE GRADO
Graduado en Ingeniería Informática Universidad Politécnica de Madrid Escuela Técnica Superior de Ingenieros Informáticos TRABAJO FIN DE GRADO ANCAS (AUTOMATIC NAVIGATION AND COLLISION AVOIDANCE SYSTEM)
Más detallesManipulación del Espacio: Transformaciones y Proyecciones
Manipulación del Espacio: Transformaciones y Proyecciones Facultad de Cs. de la Computación Juan Carlos Conde Ramírez Computer Graphics Contenido 1 Introducción 2 Transformaciones 3 Concatenación 4 Proyecciones
Más detallesSOFTWARE PARA REPRESENTACIÓN VIRTUAL DE DUCTOS E IDENTIFICACION DE DEFECTOS. Tesis QUE PARA OBTENER EL GRADO ACADÉMICO DE
SOFTWARE PARA REPRESENTACIÓN VIRTUAL DE DUCTOS E IDENTIFICACION DE DEFECTOS Tesis QUE PARA OBTENER EL GRADO ACADÉMICO DE Maestro en Ciencia y Tecnología en la Especialidad de Mecatrónica PRESENTA Ing.
Más detallesRodríguez-Losada & Hernando. Diseño y programación Orientados a Objetos. Una Visión Aplicada 2
Diseño y programación Orientados a Objetos. Una Visión Aplicada 2 Diego RODRÍGUEZ LOSADA, Miguel HERNANDO Diseño y Programación Orientados a Objetos. Una Visión Aplicada. ISBN: 978-84-96737-51-8 Formato:
Más detallesFormato: 210 x 290 mm Páginas: 198 Editorial: FUNDACIÓN GENERAL DE LA UNIVERSIDAD POLITÉCNICA DE MADRID C/Pastor nº MADRID.
Diseño y programación Orientados a Objetos. Una Visión Aplicada 2 Diego RODRÍGUEZ LOSADA, Miguel HERNANDO Diseño y Programación Orientados a Objetos. Una Visión Aplicada. ISBN: 978 84 96737 51 8 Formato:
Más detallesUNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA LAB DE COMPUTACIÓN GRAFICA PRACTICA 3 MODELADO JERARQUICO
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA LAB DE COMPUTACIÓN GRAFICA PRACTICA 3 MODELADO JERARQUICO PROFRA: ING ELIZABETH FONSECA CHAVEZ GRUPO:4 COLIN ALEJANDRO ANABEL PÁCTICA 3 MODELADO
Más detallesModelado Jerárquico FI UNAM 2007
Modelado Jerárquico FI UNAM 2007 En gran cantidad de aplicaciones, es conveniente poder crear y manejar partes individuales de una imagen sin afectar otras partes de las mismas. Definir cada objeto con
Más detallesRodríguez Losada & Hernando. Diseño y programación Orientados a Objetos. Una Visión Aplicada 2
Diseño y programación Orientados a Objetos. Una Visión Aplicada 2 Diego RODRÍGUEZ LOSADA, Miguel HERNANDO Diseño y Programación Orientados a Objetos. Una Visión Aplicada. ISBN: 978 84 96737 51 8 Formato:
Más detallesLaboratorio 2: Viewports e Interacción con el Mouse (en 2D) Seleccionar un área de la figura para hacer zoom.
Laboratorio 2: Viewports e Interacción con el Mouse (en 2D) Seleccionar un área de la figura para hacer zoom. Introducción Los vértices sufren transformaciones para pasar del mundo a la pantalla. Estas
Más detallesGRAFICACIÓN Unidad I. Catedrático: tico: Hilario Salazar OBJETIVO ESPECIFICO:
GRAFICACIÓN Unidad I Catedrático: tico: Hilario Salazar Martínez OBJETIVO ESPECIFICO: El alumno aprenderá a relacionar los conceptos básicos de geometría analítica con los conceptos iniciales de graficado
Más detallesConstrucción de Sólidos 3D
Construcción de Sólidos 3D Introducción a la Computación Gráfica Andrea Rueda Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Generación de sólidos y objetos 3D: Superficies de
Más detallesTRABAJOGRAFICOS POR COMPUTADOR Samuel Marín Calvo
TRABAJOGRAFICOS POR COMPUTADOR Samuel Marín Calvo 900719 1. EJES... 2 2. Función SETCIRCLE... 2 3. Función LOAD... 3 4. Función HI... 4 5. SETTRACE i... 5 6. Rastro con colores del arco iris... 11 7. Rastro
Más detallesUna Aplicación Informática para la Enseñanza de las Transformaciones Geométricas 3D
Una Aplicación Informática para la Enseñanza de las Transformaciones Geométricas 3D Claire Lastennet 1 ENST Bretagne F-29285 Brest cedex José Ribelles 2 Departamento de Lenguajes y Sistemas Informáticos
Más detallesPractica 4: Eventos y Menús GLUT
Practica 4: Eventos y Menús GLUT JUAN CARLOS CONDE RAMÍREZ COMPUTER GRAPHICS Volver a aplicar las principales transformaciones geométricas de OpenGL. Objetivos: Utilizar las funciones de la librería GLUT
Más detallesMétodos para detección de superficies visibles (Hearn-Baker)
Métodos para detección de superficies visibles (Hearn-Baker) Contenido Clasificación de métodos Eliminación de caras posteriores Método depth buffer Método A-buffer Qué provee OpenGl. Clasificación de
Más detallesMonroy Torres Josué Joel
Monroy Torres Josué Joel Parte 1. Programa principal. Main a) Cambie la VENTANA a una posición de 100,150, el tamaño de la ventana de 500, 700 y escribe el nombre prueba1. void ventana() { glutinitwindowsize(500,500);
Más detallesPrácticas de informática gráfica (Version 3)
Prácticas de informática gráfica (Version 3) Dr. Arno Formella http://www.ei.uvigo.es/ formella M Victoria Luzón García Universidad de Vigo Departamento de Informática E-32004 Ourense 30 de marzo de 2001
Más detallesGL_RED, GL_RGB, GL_LUMINANCE
Mapeo de Texturas Mapeo de texturas Texturas 1D Para definir la textura: void glteximage1d (GLenum objetivo, GLint nivel, GLint componentes, GLsizei ancho, GLint borde, GLenum formato, GLenum tipo, const
Más detallesEl lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org>
El lenguaje de Programación C Fernando J. Pereda Por qué aprender C? Portable y muy extendido Estándar (C89, C99) El lenguaje de los sistemas Un lenguaje fácil (no, no es broma) Por
Más detallesIntroducción a 3D Transformaciones 3D
Introducción a 3D Transformaciones 3D Introducción a la Computación Gráfica Andrea Rueda Pontificia Universidad Javeriana Departamento de Ingeniería de Sistemas Transformaciones 2D Traslación Rotación
Más detallesPROGRAMACIÓN EN JAVA. { una línea para definir, crear o ejecutar ; }
PROGRAMACIÓN EN JAVA { una línea para definir, crear o ejecutar ; } JFC Y API SPECIFICATIONS OBJECT INTERFACE ABSTRACT IMPLEMENTS EXTENDS NEW EXTENDS (Hasta que una clase derivada deje de ser ABSTRACT)
Más detallesGRAFICACIÓN Unidad II
GRAFICACIÓN Unidad II Profr.. Hilario Salazar Martínez OBJETIVO ESPECIFICO: El estudiante conocerá los algoritmos y técnicas de graficado en dos dimensiones 2.1 Recorte El recorte es el proceso
Más detallesInstalación de Software GNU/Linux en Entornos Industriales
Portada Instalación de Software GNU/Linux en Entornos Industriales Manuel Espeleta García ETIS Miquel Àngel Senar 12/01/2011 Manuel Espeleta 05.122 TFC Plataforma GNU/Linux 2/61 Dedicatoria y agradecimientos
Más detallesCapítulo I.- Ambiente de desarrollo y bibliotecas gráficas
10 Capítulo I.- Ambiente de desarrollo y bibliotecas gráficas 1.1.- Software de dominio público 1.1.1.- C++ El lenguaje en C++ es la más adecuada para la programación gráfica debido a su flexibilidad en
Más detallesTransformación de vista
(X1,Y1, Z1) (X2, Y2, Z2) (X3,Y3, Z3) geometría Coordenadas del objeto (en punto flotante) Transformación de vista T. Afines T. Vista Recorte y T. Proyección Coordenadas de Vista Dibujado de primitivas
Más detallesIntroducción general al Lenguaje C (2010/2011)
Luis Valencia Cabrera lvalencia@us.es (http://www.cs.us.es/~lvalencia) Ciencias de la Computacion e IA (http://www.cs.us.es/) Introducción general al Lenguaje C (2010/2011) Universidad de Sevilla Índice
Más detallesTema 5 Lenguajes de programación
Tema 5 Lenguajes de programación David Vallejo Fernández Curso 2007/2008 Escuela Superior de Informática 1 Índice de contenidos 1.. 2.. 3. Programming Language. 4.DirectX High-Level Shader Language. 5.Resumen.
Más detallesMallas poligonales y curvas cuádricas en OpenGL
Mallas poligonales y curvas cuádricas en OpenGL Introducción Las aplicaciones opengl están construidas sobre un loop principal que se verá más adelante en las clases de opengl. El loop principal es donde
Más detalles