Material de Auxílio Didático Interativo

EA978/IA725

DCA/FEEC/Unicamp


Transformações Geométricas e Sistemas de Referência

[Transformações Afins 2D] Applet Java
Demonstração interativa de transformações geométricas em 2D, incluindo rotação, translação, escala, reflexão, cisalhamento e composição de transformações. As transformações são aplicadas sobre primitivas adicionadas à cena pelo usuário e são compostas de vetores, segmentos de reta e retângulos. O conteúdo da matriz resultante da transformação ou composição de transformações também é exibido.
[Tranformações Afins 3D e Perspectiva] Applet Java
Demonstra diferentes tipos de transformações geométricas aplicadas sobre um cubo. A matriz de transformação pode ser modificada interativamente pelo usuário. O cubo também pode ser visualizado tanto em visão ortogonal como perspectiva, embora essa configuração não altere os parâmetros da matriz de transformação. Essa demonstração também permite a realização de composição de transformações através do empilhamento de matrizes (através do botão push).
[Transformações em Cenas #1] Applet Java
Construtor de grafo de cena (scenegraph builder). Essa demonstração permite ao usuário construir um grafo de cena, isto é, uma hierarquia de transformações utilizada para desenhar objetos numa cena 3D. É possível observar como a mudança das transformações do grafo alteram o resultado final da cena e o que acontece no espaço no qual os nós descendentes estão sendo transformados. Para adicionar um nó, o usuário deve clicar num tipo de nó (polygon, group ou transformation) e então clicar na área de trabalho. Quando um nó de transformação é selecionado, o usuário pode alterar a translação, rotação ou escala em relação a um eixo de cada vez. Os nós devem ser ligados entre si clicando no botão link e em seguida clicando no nó inicial e arrastando o cursor do mouse sobre o nó final. Exemplos de grafos de cena usando essa hierarquia são mostrados nas applets seguintes.
[Transformações em Cenas #2] Applet Java
Hierarquia de Transformação (transformation hierarchy). Essa demonstração mostra como a alteração dos parâmetros de transformação de um grafo de cena alteram o resultado final da cena e como cada transformação afeta o espaço no qual os nós descendentes da transformação são transformados.
[Transformação em Cenas #3] Applet Java
Propagação de Transformação (transform propagation). Essa applet mostra como os valores das matrizes de transformação são alterados quando o usuário modifica as propriedades dos nós do grafo de cena. Essa demonstração é uma extensão da demonstração anterior, pois utiliza o mesmo grafo de cena, embora permitindo dessa vez que o conteúdo das matrizes seja visualizado.

Autor: Harlen Costa Batagelo (harlen@dca.fee.unicamp.br)