Terceira Lista - Transformações Geométricas


Aquecimento

  1. Familiarize com os parâmteros das funções de transformações geométricas de OpenGL/ OpenGL para Win95 com o programa transformation.c. Para gerar o executável, você precisa ainda dos programas glm.c (para ler os modelos da Wavefront), sgi.c (para ler texturas), sgi.h e glm.h. Para executar o programa, os dados são requeridos. Notem que estes precisam ser descompactados.
  2. Identifique no programa cube.c da primeira lista as rotinas de transformações geométricas. O que acontecerá se removermos essas rotinas do programa?
  3. Inclua no Makefile os comandos necessários para gerar os executáveis dos seguintes programas adaptados do livro OpenGL Programming Guide:
    1. model.c
    2. planet.c
    3. robot.c
    Execute-os. Identifique e justifique as transformações aplicadas.
    Observação: A rotina glutSpecialFunc especifica as ações a serem tomadas para os eventos oriundos das teclas especiais (no caso, as setas).
  4. Altere a sequência de chamada das rotinas glTranslatef, glRotatef e glTranslatef no programa robot.c. Compare os resultados obtidos com os resultados originais. Justifique as mudanças ocorridas.
  5. Inclua no Makefile os comandos necessários para gerar o executável do programa origami.c. Execute-o e explique as transformações aplicadas.

Programação

  1. Identifique as transformações que vocês utilizaram no exercício colaborativo da primeira lista.
  2. Adicione ao programa planet.c uma lua em torno do planeta e modifique o programa de modo que ele simule o movimento planetário sol-terra-lua, correspondendo cada aperto na tecla GLUT_KEY_LEFT a um período de oito horas.
  3. Seja um cone orientado na direçáo (1.0,1.0,1.0) (o seu ápice e o cento da sua base estão localizados neste eixo) e o centro da sua base posicionado em (0.5,0.5,0.5). Implemente, com uso de quatérnios, um programa que rotaciona este cone de ângulo w em torno do eixo (nx,ny,nz) pré-definido.

  4. Voltar para a lista anterior.
    Avançar para a próxima lista.