Transformaciones con OpenGL
|
|
|
- María Luz Herrero Venegas
- hace 7 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
Grà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 [email protected]
La 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
1. 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
glclearcolor (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
OpenGL 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
3.- 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
Ejemplos de aplicaciones 3D interactivas con OpenGL
Ejemplos de aplicaciones 3D interactivas con OpenGL Apellidos, nombre Departamento Centro Agustí i Melchor, Manuel ([email protected]) Departamento de Informática de Sistemas y Computadores (DISCA)
OpenGL. 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
TECNUNLOGO: 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
TAREA 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
2. 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
Lenguaje 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
Transformaciones 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:
Lenguaje 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
OPENGL. 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
Mini Manual de OpenGL Por Daniel Barrero ([email protected]) - 11/6/2002
Mini Manual de OpenGL Por Daniel Barrero ([email protected]) - 11/6/2002 Introducción OpenGL es una interface de software para el hardware grafico, esta interface consiste de una larga serie de comandos
Funciones 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
Tutorial 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
Apuntes 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
Tutorial 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
3. 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.
Transformaciones 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
Tema 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
Coordenadas 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
Graficació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
Curso 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.
Nuestro 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
Una 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...
1. Introducción--------------------------------------------------------------------------- PAG 1
1. Introducción--------------------------------------------------------------------------- PAG 1 2. Estructura principal del programa: -------------------------------------------- PAG 2 3. Funciones relevantes:
INTRODUCCIÓ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
Proyecciones 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
Lenguaje 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
Curso de introducción a OpenGL (v1.1)
Curso de introducción a OpenGL (v1.1) Por Jorge García -aka Bardok (2004)- [email protected] - [email protected] http://www.bardok.net This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Tema 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
Practica 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
6. 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
1. 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
Sistemas 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
Programació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.
Transformaciones 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
Escenarios 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
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.
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.
Mi 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
Grà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
Tema 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
Cá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
Viewports 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
Introducció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
LABORATORIO 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
GRAFICACIÓ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
Geometrí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
Laboratorio de Graficación. Garibaldi Pineda García
Laboratorio de Graficación Garibaldi Pineda García [email protected] OpenGL API Máquina de estados Implementa un pipeline de visualización 3D OpenGL Básicamente transforma modelos a pixeles Evita que
INTRODUCCIÓ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
Vertex 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
Laboratorio 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
Graduado 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)
Manipulació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
Rodrí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:
UNIVERSIDAD 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
Modelado 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
Rodrí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:
Laboratorio 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
GRAFICACIÓ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
Construcció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
Una 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
Practica 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é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
Monroy 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);
GL_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
El lenguaje de Programación C. Fernando J. Pereda <[email protected]>
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
Introducció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
PROGRAMACIÓ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)
GRAFICACIÓ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
Capí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
Introducción general al Lenguaje C (2010/2011)
Luis Valencia Cabrera [email protected] (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
Tema 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.
Mallas 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
