Diagrama de temas

  • Visualización e Interacción Gráfica (2009)

    visualizacion_e_interaccion_grafica.jpg   

         

    Profesores

    Andrés Iglesias Prieto

    Akemi Gálvez Tomida

    Departamento de Matemática Aplicada y Ciencias de la Computación

     

     

     

     

     

    El objetivo general del curso es proporcionar al alumno/a una visión general de las técnicas y métodos que se aplican en la generación y manipulación de gráficos por computador, desde las Interfaces Gráficas de usuario disponibles en los sistemas operativos actuales hasta los modelos más avanzados de renderizado y animación por computador.

    Dicha visión incluye la comprensión de los fundamentos de dichos métodos, y posibles formas de implementación, así como de sus efectos sobre las escenas virtuales.

     

    Palabras Clave de la Asignatura

    Formatos Gráficos, Modelado Geométrico, GUI, Bezier, Gráficos para la Web, Animación, Realidad Virtual, Renderizado, Expresión Gráfica, Diseño Asistido por Ordenador, Gráficos Vectoriales, CAD.

  • Prácticas

    practicas

     

     

    Las prácticas del curso, distribuidas a razón de 2 horas a la semana durante un cuatrimestre (15 semanas) según se describe en horario, consisten en 3 actividades diferentes:

    • Sesiones de vídeo.

    • Prácticas guiadas y propuestas.

    • Trabajo final de curso.

       

    Presentación

    • PR-F-001. Formato de presentación de las prácticas.

       

    Sesiones de vídeo

    El curso incluye, al menos, 3 sesiones de vídeo, organizadas de la forma siguiente:
    • PR-F-002. Vídeo 1. Ilusiones virtuales. Vídeo introductorio del curso. Trata sobre la historia y evolución de los gráficos por computador, con opiniones de expertos en el tema, así como una revisión de las principales aplicaciones de los gráficos por computador (1,5 horas).
    • PR-F-003. Vídeo 2. Curvas y superficies de forma libre. Vídeo educativo producido por HP para la formación en diseño geométrico asistido por computador de curvas y superficies de forma libre. Incluye una revisión de conceptos de geometría diferencial (2 horas).
    • PR-F-004. Vídeo 3. Aplicaciones industriales. Vídeo con entrevistas a expertos del tema sobre el tema del diseño en la producción industrial (30 minutos).

       

    Prácticas guiadas y propuestas

    • PR-F-005. Práctica 1. Matrices de transformación. Implementación de las transformaciones 2D y 3D más usuales. Aplicación a un ejemplo de generación de un patrón gráfico y/o una animación geométrica en modelo de alambres.
    • PR-F-006. Práctica 2. Algoritmo de Bresenham. Implementación de los algoritmos de Bresenham para rectas y curvas. Comparación con el método DDA.
    • PR-F-007. Práctica 3: Curvas y superficies de Bézier. Implementación de los algoritmos para la generación de curvas y superficies de Bézier. El programa resultante debe permitir introducir los puntos de control de curvas bi-dimensionales mediante pulsación de ratón sobre la pantalla, de forma interactiva. En el caso de superficies, los datos deben ser introducidos manualmente por el usuario/a mediante el teclado o bien leidos directamente de un fichero.
    • PR-F-008. Práctica 4. Curvas y superficies Bspline. Implementación de los algoritmos para la generación de curvas y superficies Bspline. El programa resultante debe permitir introducir los puntos de control de curvas bi-dimensionales mediante pulsación de ratón sobre la pantalla, de forma interactiva. En el caso de superficies, los datos deben ser introducidos manualmente por el usuario/a mediante el teclado o bien leidos directamente de un fichero.
    • PR-F-009. Práctica 5. GUI avanzada en Matlab para curvas y superficies de forma libre. En esta práctica, se muestra una Interfaz Gráfica de Usuario (GUI) sobre curvas y superficies de forma libre, la cual se utiliza para analizar los algoritmos mas importantes para estas entidades geométricas. Se propone la creación por parte del alumno/a de una GUI similar que incorpore algunos de los algoritmos analizados (subdivisión, elevación de grado, etc.).
    • PR-F-010. Práctica 6. GUI avanzada en Matlab para modelos de iluminación. En esta práctica se muestra una GUI para analizar diversos modelos de iluminación (flat, gouraud, phong). Se propone la creación por parte del alumno/a de una GUI similar que permita iluminar objetos o escenas de acuerdo a los modelos estudiados.
    • PR-F-011. Práctica 7. Fractales: sistemas de funciones iteradas. Implementación de un programa para la generación de estructuras fractales mediante sistemas de funciones iteradas. Aplicación del mismo para la animación de objetos naturales y/o la generación de objetos fractales con cierto realismo (montañas fractales, etc.).
    • PR-F-012. Práctica 8. Texturizado. Implementación de algún modelo de texturizado (bump mapping, texture mapping, etc.). Posible uso de software ya creado para la generación de texturas y su aplicación sobre objetos de diversas geometrías.
    • PR-F-013. Práctica 9. Simulación del agua. Implementación de algún método (mapas de alturas, sistemas de partículas, etc.) de simulación y renderizado del agua.
    • PR-F-014. Práctica 10. Sistemas de partículas. Generación de un sistema de partículas por ordenador. Aplicación a la simulación de algún fenómeno natural (fuego, agua, explosiones, humo, etc.).
    • PR-F-015. Práctica 11. Creación de una GUI. Creación de una GUI en algún lenguaje de programación y/o librería gráfica sobre alguno de los tópicos estudiados en el curso o en las prácticas del mismo.
    • PR-F-016. Práctica 12. Formatos JPEG, MPEG y MP3. Estudio teórico-práctico del formato gráficos JPEG, de video MPEG y/o de audio MP3.
    • PR-F-017. Práctica 13. Creación de una página web con contenido gráfico. Creación de contenido web con elementos gráficos (vídeo, imágenes GIF, JPEG, audio, etc.) y/o contenido multimedia. Creación de contenidos multimedia mediante esquemas Web3D.
    • PR-F-018. Práctica 14. Realidad virtual. Creación y navegación por una escena en VRML. Creación de una escena en VRML. Navegación por la escena. Interacción con eventos y/o avatars.

    Notas

    • Las prácticas que supongan la generación de código por computador pueden realizarse sobre cualquier lenguaje de programación (C/C++, Pascal, Fortran, Java) y/o librería gráfica (OpenGL, DirectX), así como sistemas de cálculo científico de propósito general (Matlab, Maple, Mathematica). No obstante, se sugiere que el lenguaje/librería/sistema elegido disponga de algún tipo de prestación gráfica a fin de disminuir la dificultad que conllevaría la práctica en caso de requerir la generación de la parte gráfica desde cero.

    • Se aceptan implementaciones sobre vídeo-consolas. Igualmente, se aceptan implementaciones sobre dispositivos de interacción hombre-máquina tipo Wii o similares.

    • La práctica debe acompañarse con una breve memoria que exponga:

      • El objetivo de la práctica.

      • Los métodos implementados con sus correspondientes fórmulas, pseudocodigos, etc. según corresponda.

      • Los principales resultados obtenidos.

      • Limitaciones y ventajas del software generado.

      • Lista de ejemplos de prueba (banco de pruebas).
    • La lista de prácticas indicada no es exhaustiva. En todo momento, un alumno/a puede proponer realizar alguna práctica no considerada en la lista anterior. El profesor determinará, tras la conversación con el alumno/a, si se acepta su propuesta como posible práctica del curso o posible trabajo fin de curso.

      

    Trabajo final del curso

    • El trabajo final del curso debe entenderse como una práctica más completa. El trabajo presenta unos objetivos más ambiciosos que una práctica común, tanto en el planteamiento como en el desarrollo posterior. Asimismo, demuestra una mayor conocimiento de algún tema (el elegido en el trabajo) que la mera realización de una práctica.

    Notas

    • El trabajo final de curso puede ser realizado de forma individual o en grupo. En este último caso, todos los integrantes del grupo tendrán asignada la misma nota, salvo que puede distinguirse claramente la parte realizada por cada alumno/a. Los grupos pueden ser de hasta 4 personas.

    • Cada trabajo final de curso debe incluir una memoria como la reseñada para las prácticas, pero de mayo longitud y profundidad de contenidos.

    • El tema del trabajo final del curso es de libre elección por parte de los alumnos/as, pero debe estar relacionado con los temas del curso. En otras palabras, pueden abordarse temas no tratados en el curso, pero dichos temas deben tener relación con los contenidos del curso. En todo caso, la propuesta de cada trabajo debe contar con la aprobación de la propuesta por parte de los profesores del curso.