A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Computação Gráfica Teórica Centro Universitário da FEI Curso de Ciência da Computação Prof. Paulo Sérgio Rodrigues www.fei.edu.br/~psergio.

Apresentações semelhantes


Apresentação em tema: "Computação Gráfica Teórica Centro Universitário da FEI Curso de Ciência da Computação Prof. Paulo Sérgio Rodrigues www.fei.edu.br/~psergio."— Transcrição da apresentação:

1 Computação Gráfica Teórica Centro Universitário da FEI Curso de Ciência da Computação Prof. Paulo Sérgio Rodrigues

2 Computação Gráfica Teórica Introdução à Computação Gráfica: Transformações Geométricas

3 Computação Gráfica Teórica

4

5

6

7

8 Transformações em Pontos e Objetos A habilidade de representar um objeto em várias posições no espaço é fundamental para a compreensão da sua forma. A possibilidade de submeter o objeto a diversas transformações é importante em diversas aplicações de CG. Computação Gráfica Teórica

9 Transformações em Pontos e Objetos Transformações ou operações de corpos físicos a serem estudadas: – Translação – Rotação – Escala são o coração de muitas Aplicações em Computação Gráfica. Computação Gráfica Teórica

10 Princípios das transformações 2D Dois aspectos importantes: 1. Uma transformação é uma Entidade Matemática Única e portanto pode ser Denotada, ou identificada, por um nome, ou símbolo, também único. 2. Duas transformações podem ser Combinadas, ou Concatenadas, produzindo uma única transformação que tem o mesmo efeito que a aplicação seqüencial das duas transformações originais. Computação Gráfica Teórica

11 Conceitos Básicos de Matrizes As imagens na Computação Gráfica são geradas a partir de uma série de Segmentos de Linha que, por sua vez, são representados pelas Coordenadas de seus Pontos extremos. Multiplicação Matricial (o que nos interessa). Computação Gráfica Teórica

12 Conceitos Básicos de Matrizes Envolve produtos simples e a soma de elementos das matrizes. A (1,3). B (3,2) = C (1,2) Computação Gráfica Teórica

13 Conceitos Básicos de Matrizes Diferentemente da Multiplicação de Números a Multiplicação de Matrizes não é Comutativa A (1,3). B (3,2) # B (3,2). A (1,3) A Multiplicação de Matrizes é Associativa. A. (B.C) = (A.B). C Computação Gráfica Teórica

14 Conceitos Básicos de Matrizes Existe um grupo de Matrizes que quando Multiplicada por outra Matriz tem a Propriedade de Reproduzir essa mesma Matriz. Este tipo de Matriz recebe o nome de Identidade. I. A = A Computação Gráfica Teórica

15 Transformação de Translação Significa movimentar o objeto de lugar – Aplicada sobre cada vértice – Altera o objeto como um todo – A topologia não é modificada Translação desloca cada ponto para a nova posição usando a Adição de Valores. Computação Gráfica Teórica

16 Transformação de Translação Ou seja: – Dx unidades, deslocadas paralelamente ao Eixo X – Dy unidades, deslocadas paralelamente ao Eixo Y Podendo ser descrito como (2D): xp= xp + dx yp= yp + dy Computação Gráfica Teórica

17 Transformação de Translação Ou ainda de forma matricial (2D): Computação Gráfica Teórica

18 Transformação de Translação Exemplo (2D): Computação Gráfica Teórica

19 Transformação de Escala Significa mudar as dimensões de escala – Aplicada sobre cada vértice – Altera o objeto como um todo – A topologia não é modificada Para fazer com que uma imagem mude de tamanho teremos que multiplicar os valores de suas coordenadas por um fator de escala Computação Gráfica Teórica

20 Transformação de Escala Ou seja: – S representa o fator de escala no eixo X – Sy representa o fator de escala no eixo Y Podendo ser descrito como: xp= xp * sx yp= yp * sy Computação Gráfica Teórica

21 Transformação de Escala De forma matricial: Computação Gráfica Teórica

22 Transformação de Escala Exemplo: Computação Gráfica Teórica

23 Rotação (2D) x y r P(x,y) x = r.cos( ) y = r.sin( ) x = r.cos( + ) = r.cos( ).cos( ) - r.sin( ).sin( ) y = r.sin( + ) = r.cos( ).sin( ) + r.sin( ).cos( ) x = x.cos( ) - y.sin( ) y = x.sin( ) + y.cos( ) r

24 Rotação (2D) P´= R( )*P x y x y

25 Rotação ao redor do Centro de massa 1 2 x y 2 P´= T(-cmx, -cmy)*P P´´= R( ) *P´ P´´´= T(cmx, cmy)*P´´ x y x y x y (cmx,cmy)

26 Composições de Transformações Rígidas 2D Escala ao redor do centro de massa do objeto P´= T(cmx, cmy)* E(Ex, Ey)* T(-cmx, -cmy)*P Rotação ao redor do centro de massa do objeto P´= T(cmx, cmy)* R( )* T(-cmx, -cmy)*P Uma única matriz 3x3 que resulta em duas translações e uma escala Dois exemplos:

27 Transformadas Geométricas 3D (Translação) Translação: P´= T( x, y, y)*P

28 Escala 3D Escala: P´= E(Ex, Ey, Ez) * P Escala ao redor do centro de massa do objeto P´= T(cmx, cmy, cmz)*E(Ex, Ey,Ez)*T(-cmx, -cmy, -cmz)*P

29 Rotação (eixo z fixo) P´= Rz( )*P (sentido de x para y) Rotação ao redor do centro de massa do objeto P´= T(cmx, cmy, cmz)* Rz( )* T(-cmx, -cmy, -cmz)*P

30 Rotação (eixo x fixo) P´= Rx( )*P (sentido de y para z) Rotação ao redor do centro de massa do objeto P´= T(cmx, cmy, cmz)* Rx( )* T(-cmx, -cmy, -cmz)*P

31 Rotação (eixo y fixo) P´= Ry( )*P (sentido de z para x) Rotação ao redor do centro de massa do objeto P´= T(cmx, cmy, cmz)* Ry( )* T(-cmx, -cmy, -cmz)*P Transformação genérica ao redor do centro de massa: P´= T(cmx, cmy, cmz)* Rz( )* Ry( )* Rx( )* T(-cmx, -cmy, -cmz)*P

32 Diretivas OpenGL Primitivas: –glTranslatef ( tx, ty, tz ) –glRotatef ( ângulo, vx, vy, vz ) (vx, vy, vz) = vetor que define eixo de rotação –glScalef ( sx, sy, sz ) Alteram a matriz de transformação corrente denominada de matriz MODELVIEW. Computação Gráfica Teórica


Carregar ppt "Computação Gráfica Teórica Centro Universitário da FEI Curso de Ciência da Computação Prof. Paulo Sérgio Rodrigues www.fei.edu.br/~psergio."

Apresentações semelhantes


Anúncios Google