A RV e RA e suas aplicações na TVD 23/04/2012

Tamanho: px
Começar a partir da página:

Download "A RV e RA e suas aplicações na TVD 23/04/2012"

Transcrição

1 A Realidade Virtual e Aumentada e suas aplicações na Televisão Digital 3. Computação Gráfica Básica Prof. Dr. Antonio Carlos Sementille Departamento de Computação/FC semente@fc.unesp.br O pipeline O pipeline de Visualização 3D Modelagem e Visualização - Representação de objetos em 3D - Transformação de objetos e composição de cenas - Especificação de um ponto de vista da câmera Projeção - Projeção de cenas 3D em superfícies 2D (display) Rendering (geração da imagem) - Iluminação - Surface rendering - Aumento de realismo através de texturas, sombras, etc. Modelagem e definição da câmera x Objetos - representados como conjuntos de faces, e as faces como conjuntos de pontos Cenas - compostas aplicando transformações aos objetos para criar um mundo 3D Projeção - A cena 3D é projetada num plano 2D câmera Posição da câmera - especificada conjuntamente com a direção câmera Plano de visualização Prof. Sementille 1

2 Iluminação: Comoéquealuzé reflectida pelos objetos da?? cena? textura Surface rendering: Acabamento dos objetos sombras e mais... Projecções ortográficas: Sequência Shutterbug planta Renderman, Pixar, 1990 vistas frontal e lateral Projeção perspectiva A forma mais simples, mas pouco realista : É atribuida uma cor a cada objeto (sem considerar as normais) Prof. Sementille 2

3 Método de surface rendering flat ou uniforme (Considerando as normais, cada polígono tem shading constante) Método de Gouraud Método de Phong Método de Phong com superfícies curvas Modelo de iluminação melhorado Texturas Prof. Sementille 3

4 Sombras Transformações 2D Transformações de coordenadas na geração da imagem de uma cena Visualização 2D (xmc, ymc, zmc) (xwc, ywc, zwc) (xvc,yvc,zvc) (xpc,ypc,zpc) (xnc,ync,znc) (xdc,ydc) É preciso usar transformações 2D para mostrar diferentes cenas (ou partes de cenas) em diferentes zonas do monitor Visualização 2D Visualização de cenas 3D Neste caso é necessário gerar uma imagem 2D, o que implica uma projeção pelo menos enquanto não usarmos dispositivos que gerem imagens verdadeiramente 3D Prof. Sementille 4

5 Visualização 3D Transformações de Modelagem Especificam transformações para os objetos Permitem a definição de objetos em seus próprios sistemas de coordenadas Permitem o uso da definição do objeto várias vezes em uma cena Imagem de uma cena tridimensional gerada usando projecção perspectiva Transformações de Modelagem 2D Transformações de Modelagem 2D y Coordenadas de Modelagem Escala Translação y Coordenadas de Modelagem x x Escala Rotação Translação Vamos olhar em detalhe Coordenadas do Mundo Coordenadas do Mundo Transformações de Modelagem 2D Transformações de Modelagem 2D Coordenadas de Modelagem Coordenadas de Modelagem y y x x Posição inicial em (0, 0) com os eixos x e y alinhados Escala.3,.3 Rotate -90 Translate 5, 3 Prof. Sementille 5

6 y Transformações de Modelagem 2D Coordenadas de Modelagem x Escala.3,.3 Rotação -90 Translate 5, 3 y Transformações de Modelagem 2D Coordenadas de Modelagem x Escala.3,.3 Rotação -90 Translação 5, 3 Coordenadas do Mundo Transformações 2D básicas Translação p = (x, y) ponto original Para fazer uma translação é necessário especificar deslocamentos em x e y p = (x, y ) ponto transformado As transformações básicas são: Notação vectorial - Translação Nota: alguns livros e packages gráficos mais antigos usam uma notação em - Mudança de escala que cada ponto é uma matriz linha e não um vector: P = [ x y ] - Rotação matriz de transformação Translação A translação desloca um objecto sem o deformar: é uma transformação de corpo-rígido Para aplicar uma translação a um segmento de recta, transformam-se os extremos e unem-se os pontos transformados Para aplicar uma translação a um polígono, transformam-se os vértices Rotação Para efectuar uma rotação é necessário especificar: - um ponto em torno do qual se vai efectuar a rotação (xr,yr) ( intersecção entre o eixo de rotação e o plano xy ) - um ângulo de rotação(positivo no sentido anti-horário) Rotação positiva Prof. Sementille 6

7 Rotação em torno da origem Rotação em torno da origem Por facilidade, calculemos em 1º lugar a matriz de transformação correspondente a uma rotação em torno da origem: x = r cos ( )=rcos + cos -rsin sin y = r sin ( )=rcos + sin +rsin cos rsin( + ) x=rcos As coordenadas originais do ponto em coordenadas polares são: Nota: quando se usa a notação em que cada ponto é uma matriz linha, altera-se a ordem da multiplicação de matrizes e as matrizes de transformação são as transpostas: P = P. RT y=rsin Substituindo nas expressões anteriores temos: x = x cos -ysin rcos( + ) y = x sin + y cos TPC: verificar 11 Matriz de rotação de um ângulo com em torno da origem Mudança de escala Para modificar o tamanho de um objecto aplica-se uma mudança de escala, sendo sx e sy fatores de escala: x = x. sx Mudança de escala Podem-se usar valores de s >0 x = x. sx y = y. sy Transformação de um quadrado num quadrado maior através de uma mudança de escala, sx=2, sy=2 y = y. sy sx = sy mudança de escala uniforme = sxsy mudança de escala não uniforme matriz de transformação P = S. P Transformação de um quadrado num quadrado maior através de uma mudança de escala, sx=2, sy=2 Transformação de um quadrado num rectângulo através de uma mudança de escala, sx=2, sy=1 16 Mudança de escala Os objetos transformados pela transformação S são também reposicionados: s < 1 objeto aproxima-se da origem s>1 objeto afasta-se da origem Coordenadas homogêneas A maioria das aplicações gráficas envolvem sequências de transformações Por exemplo: - as transformações de visualização envolvem sequências de translações e rotações para gerar uma imagem de uma cena - uma animação pode requerer que um objeto sofra uma translação e uma rotação entre cada dois frames consecutivos Um segmento de recta diminui em tamanho e aproxima-se da origem quando se aplica uma mudança de escala sx = sy= 0,5 Vejamos como se podem representar as transformações anteriores para que se possam realizar sequências de transformações de forma eficiente Prof. Sementille 7

8 Vimos que as três transformações básicas 2D podem ser expressas na forma geral: P = M1.P+M2 M1 é uma matriz 2x2 contendo factores multiplicativos M2 é uma matriz coluna com dois elementos: os dois termos de translação É possível combinar numa única matriz os termos multiplicativos e os aditivos se utilizarmos matrizes de 3x3 Todas as transformações podem ser representadas por multiplicações de matrizes Podemos usar a terceira coluna para os termos aditivos É necessário passar a representar cada ponto por três coordenadas: Uma abordagem mais eficiente consiste em ter uma única matriz que: - represente todas as transformações de uma sequência - possa ser aplicada uma única vez a cada ponto (x,y) (xh, yh, h), h=0 x=xh /h y=yh /h ( x.h, y.h, h) Isto consegue-se usando coordenadas homogêneas 21 Uma escolha que facilita é: Transformações 2D em coordenadas homogêneas plano h =1 O que resulta em: Quando se usam coordenadas homogêneas podemos realizar todas as transformações geométricas por multiplicação de matrizes Translação 2D: (x,y) (x,y,1) Existe uma infinidade de pontos Ph no espaço tridimensional das coordenadas homogêneas que correspondem a um único ponto (x,y) 22 Transformações inversas Rotação 2D: A transformação inversa de uma translação: Mudança de escala 2D: é uma translação com parâmetros simétricos em x e y: Prof. Sementille 8

9 Uma rotação inversa obtém-se substituindo o ângulo de rotação pelo seu simétrico: Uma mudança de escala inversa obtém-se substituindo os factores de escala pelos seus recíprocos: Mudança de escala sx=2, sy=1 Podemos calcular a inversa de qualquer matriz de rotação calculando a transposta; Isto deve-se ao facto de apenas o seno ser afetado pela mudança de sinal do ângulo O produto de uma matriz S correspondente a uma mudança de escala pela sua inversa produz uma matriz identidade: S.S-1 =I Mudança de escala sx=1/2, sy=1 Transformações compostas Usando a representação matricial podemos gerar uma matriz correspondente a uma sequência de transformações calculando o produto das transformações individuais Composição de duas translações sucessivas O produto de matrizes de transformação chama-se concatenação ou composição de matrizes A concatenação de duas matrizes calcula-se como: Segunda transformação a ser aplicada Primeira transformação a ser aplicada P = M2.M1.P Nota: A composição das matrizes de =M.P transformação faz-se multiplicando da direita para a esquerda (nesta notação) As coordenadas do ponto transformado P são calculadas através da multiplicação de uma única matriz Composição de duas mudanças de escala sucessivas Rotação em torno de um ponto arbitrário (xr, yr) Posição original 1- Aplicar a 2- Girar em 3- Aplicar translação por do objeto e do translação que torno da origem forma a levar o ponto ponto (xr, yr) leva (xr, yr) para arbitrário a (xr, yr) a origem Prof. Sementille 9

10 Rotação em torno de um ponto arbitrário É necessário aplicar uma: Mudança de escala mantendo um ponto fixo (xf, yf) 1 - uma translação por forma a que o ponto arbitrário coincida com a origem 2 - uma rotação em torno da origem 3 - uma translação por forma a levar o ponto arbitrário para a posição original 3- Translação do 2- Rotação de ponto arbitrário para a posição original 1- Ponto arbitrário para a origem TPC: verificar Posição original 1- Aplicar a 2- Aplicar a 3- Aplicar translação por do objeto e do translação que mudança de forma a levar o ponto fixo ponto ( xf,yf ) leva ( xf,yf ) escala a ( xf,yr ) para a origem 32 Propriedades de concatenação de matrizes A multiplicação de matrizes é associativa Por exemplo, quando se pretender aplicar uma rotação e uma translação a um objeto, é necessário ter cuidado com a ordem em que se aplicam as transformações Dadas quaisquer três matrizes M1, M2, M3, o seu produto pode ser obtido multiplicando em primeiro lugar M3 por M2, ou multiplicando primeiro M2 e M1 M3.M2.M1 =(M3.M2).M1 =M3.(M2.M1) Mas os produtos de transformações em geral não são comutativos: M2.M1=M1.M2 Por exemplo, quando se pretender aplicar uma rotação e uma translação a um objeto, é necessário ter cuidado com a ordem em que se aplicam as transformações A alteração da ordem de uma sequência de transformações pode afetar o resultado final. Em a) é aplicada a translação na direção x e depois a rotação de 90º no sentido anti-horário. Em b) o objeto é rodado e depois aplicada a translação Em alguns casos particulares a multiplicação de duas matrizes de transformação é comutativa (duas rotações ou duas mudanças de escala ou duas translações sucessivas) Concatenação de transformações e eficiência computacional Uma transformação bidimensional representando uma combinação de transformações (translações, rotações, mudanças de escala) pode ser representada como: Por exemplo: se um objeto tiver que sofrer uma mudança de escala e uma rotação em torno do seu centróide (xc, yc) e depois sofrer uma translação, temos: termos multiplicativos correspondentes às rotações e mudanças de escala termos correspondentes a distâncias de translação e centro de rotação ou ponto fixo na mudança de escala As coordenadas transformadas são dadas por: 36 Prof. Sementille 10

11 Assim, para qualquer sequência de transformações, depois de concatenadas numa única matriz, são necessárias apenas: -4 multiplicações -4 adições Se não se calcular uma única matriz, cada uma das transformações tem que ser aplicada individualmente, sendo o número de operações muito superior Os problemas de eficiência são importantes nas rotações pois estas utilizam transformações trigonométricas e várias multiplicações para transformar cada ponto. Em animação e outras aplicações que envolvam muitas rotações de ângulo pequeno, podem usar-se aproximações para aumentar a eficiência computacional Mas o erro acumulado pode tornar-se muito grande Deve-se, portanto, usar uma única matriz de transformação resultante das várias transformações a aplicar Note-se que os coeficientes dessa matriz apenas têm que ser calculados uma única vez Outras transformações Reflexão Além das transformações básicas (translação, rotação e mudança de escala) alguns packages gráficos fornecem outras transformações que podem ser úteis, como: - reflexão - shearing Shearing na direção x: Uma reflexão é uma transformação que produz uma imagem num espelho Uma reflexão em torno do eixo dos xx (y=0) obtém-se multiplicando por -1 as coordenadas y Reflexão em torno do eixo dos xx Uma reflexão em torno do eixo dos yy (x=0) obtém-se multiplicando por -1 as coordenadas x Quadrado unitário Paralelogramo resultante de um shear na direcção x 40 Reflexão em torno do eixo dos yy Transformações entre sistemas de coordenadas 2D As aplicações de Computação Gráfica envolvem, em geral, transformações de um sistema de coordenadas para outro ao longo do pipeline de produção das imagens Transformações entre sistemas de coordenadas 2D cartesianas Consideremos um sistema de coordenadas cartesianas x y com a origem no ponto (xo, yo) e um ângulo theta em relação ao sistema xy Para transformar descrições de objetos do sistema xy para x y, determinamos uma transformação que sobreponha os eixos x y sobre os eixos xy : Também se podem utilizar coordenadas não-cartesianas (por ex: polares) Vamos considerar apenas transformações de coordenadas entre sistemas de coordenadas cartesianas 1- Aplicar uma translação que leve a origem de x y : (xo, yo) para a origem de xy : (0,0) 2- Rodar o eixo x por forma a que coincida com x Prof. Sementille 11

12 As transformações 3D obtém-se a partir da generalização das transformações 2D incluindo considerações sobre o eixo ZZ Transformações Geométricas 3D Nas rotações 2D apenas se consideram rotações sobre o plano XOY (i.e., em torno de eixos perpendiculares a este plano) Agora é possível seleccionar qualquer eixo de rotação Um ponto definido num espaço tridimensional é representado, em coordenadas homogéneas, por um vector com 4 elementos P = (x,y,z) x Ph = y z 1 Sistema de coordenadas adequado a computação gráfica (ex: VRML) 2 Translação x = x + tx y = y+ty z =z+tz Rotação Podemos rodar um objeto em torno de um eixo qualquer no espaço, mas as rotações em torno de um dos eixos coordenados são mais simples Sentido Antihorário Por convenção: ângulos de rotação >0 rotações anti-horárias P = T. P Isto está de acordo com a convenção estabelecida para 2D (no plano XOY, em torno da origem) 4 Rotações em torno dos eixos coordenados A transformação correspondente à rotação 2D no plano XOY, em torno da origem, é facilmente generalizável a 3D x = x cos - y sin y = x sin + y cos z = z Rotações em torno do eixo ZZ As equações correspondentes à rotação 2D no plano XOY, em torno da origem, são facilmente generalizáveis a 3D: x = x cos - y sin y = x sin + y cos z = z Obtemos uma rotação de em torno do eixo ZZ : O parâmetro especifica o ângulo de rotação em torno do eixo ZZ Para qualquer ponto, a coordenada z permanece inalterada com esta transformação 5 Nesta rotação as coordenadas z não se alteram 6 Prof. Sementille 12

13 Rotações em torno do eixo XX Rotações em torno do eixo YY As rotações em torno dos outros eixos podem-se obter através de uma permutação cíclica de x, ye z: x y z x Assim, obtemos uma rotação de em tornodoeixoxx : Fazendo a mesma permutação, obtemos uma rotação de em torno do eixo YY : z = z cos - x sin x = z sin + x cos y = y y = y cos - z sin z = y sin + z cos x = x Nesta rotação as coordenadas x Não se alteram 7 Nesta rotação as coordenadas y não se alteram 8 Exemplo de uma transformação composta Considere-se a transformação que permite levar os segmentos de reta da posição a) à posição b) Para calcular a matriz correspondente a esta transformação composta pode-se decompor este problema em sub-problemas mais simples para os quais se conhecem as matrizes de transformação: a) posição inicial b) posição final? 1- translação de P1 para a origem 2- rotação em torno do eixo YY por forma a levar P1 P2 ao plano YOZ 3- rotação em torno do eixo XX por forma a levar P1 P2 ao eixo ZZ 4- rotação em torno do eixo ZZ por forma a levar P1 P3 ao plano YOZ Segmento P1P3 posicionado no plano YOZ Rotação em torno de um eixo paralelo a um eixo coordenado 1- Posição inicial 3-Rotaçãodoobjectoemtorno do eixo coordenado 2- Translação do eixo de rotação para o eixo coordenado 4- Translação do eixo de rotação para a posição original Prof. Sementille 13

14 Mudança de escala Uma mudança de escala tridimensional corresponde a uma matriz de transformação que se obtém por generalização da matriz 2D Mudança de escala em relação a um ponto fixo Uma mudança de escala tridimensional em relação a um ponto fixo é uma transformação composta pela seguinte sequência de transformações: 1. Translação do ponto fixo para a origem Uma mudança de escala tridimensional altera também a posição do objecto em relação à origem 2. Mudança de escala Mudança de escala 3. Translação do ponto fixo para a sua tridimensional mantendo um posição original ponto fixo (xp, yp, zp) x = sx.x, y =sy.y, z =s z.z Mudança de escala em relação a um ponto fixo Transformação entre sistemas de coordenadas 3D Tal como em 2D é possível transformar coordenadas de um sistema para outro Uma classificação Os métodos de visibilidade podem ser basicamente classificados em: Determinação da Visibilidade - object-space - comparam objectos ou partes de objectos entre si para determinar que superfícies são visíveis (ex: determinação das faces de trás) - image-space.- resolvem a visibilidade ponto a ponto para cada um dos pixels do plano de visualização (ex: z-buffer, A-buffer, ray-caster) - híbridos - usam ambas as abordagens Embora difiram bastante, muitos usam para melhorar o desempenho: - Coerência - Ordenação (sorting) Prof. Sementille 14

15 O problema da visibilidade consiste em determinar que primitivas transformadas, projectadas e iluminadas contribuem para os pixels da imagem É fundamental determinar quais as partes da cena que são visíveis do ponto de vista escolhido, para representar essas e eliminar as outras Em geral resolve-se o problema oposto quais as superfícies invisíveis que: - estão fora do campo de visão - são faces de trás num poliedro fechado - estão ocultas por outras faces mais próximas da câmera Existem muitos métodos para o fazer, que variam em: - abordagem - tempo consumido - memória necessária -. Podem ser mais adequados conforme: - a complexidade da cena - equipamento disponível -. Alguns métodos: Detecção das faces de trás (back-faces) Detecção das faces de trás (back-face culling) Depth-buffer (z-buffer) A-buffer Depth-sorting (painter s algorithm) Ray-casting Este método é suficiente para um único poliedro convexo na cena Não é suficiente: - para poliedros côncavos - ou quando existem mais objetos Vista de um objecto côncavo com uma face parcialmente invisível Num sistema de coordenadas de mão direita um polígono pode considerar-se uma face detrás se C <= 0 com uma direção de visualização segundo o eixo negativo dos zz Depth-Buffer (z-buffer) Exemplo Um método image-space muito usado, compara profundidade das superfícies em relação a cada pixel no plano de visualização Estado inicial do z-buffer polígono z-buffer É rápido e fácil de implementar para superfícies planas Pode ser adaptado a superfícies não planas Implica um buffer de profundidades além do frame-buffer S1 está mais próximo do plano de visualização, portanto é visível no ponto (x,y) Atenção Neste caso: 0 - distância do fundo Max - plano de visualização outro polígono estado final do z-buffer Prof. Sementille 15

16 - Cena simples: Curiosidade: Edwin Catmull, o inventor do z-buffer, atualmente presidente da Walt Disney e Pixar Animation Studios recebeu um - Representação no z-buffer Oscar em 2000 Vantagens: A-Buffer - Simples, não implica uma ordenação prévia das superfícies - Rápido Desvantagens: Anti-aliased area-average, accumulation buffer Corresponde a uma extensão do depth-buffer, permitindo tomar em consideração mais do que uma superfície, i.e. tratar superfícies transparentes - Implica mais recursos de memória - tem limitações de precisão também em profundidade Permite também minorar o aliasing nas arestas dos objetos Superfície opaca atrás Superfície transparente - Só encontra uma superfície visível para cada pixel, i.e. apenas trata superfícies opacas Ver uma superfície opaca através de uma superfície transparente requer acumular contribuições de várias superfícies Cada posição do A-buffer tem dois campos: - profundidade: valor - intensidade: valor ou um ponteiro para lista Organização de um A-buffer: por cada pixel para: a) uma única superfície; b) várias superfícies Depth-sorting (algoritmo do pintor) Método que usa operações image-space e object-space Para cada superfície, é armazenada na lista a seguinte informação: -RGB - opacidade - profundidade - percentagem da área do pixel coberta pela superfície - ponteiro para a próxima superfície - Executa as seguintes operações básicas: 1- ordenação das superfícies por distância ao plano de visualização 2- projecção das superfícies ordenadamente, começando pela mais distante (back to front) Quando há sobreposições de várias superfícies é necessário usar testes para averiguar se é necessário alterar a ordem ou dividir as superfícies Não é necessário um buffer de profundidade mas faz o render de zonas distantes não visíveis 15 Prof. Sementille 16

17 Ray-Casting Método image-space Se se considerar a linha de vista a partir de um pixel no plano de visualização até à cena, é possível determinar que objectos são intersectados Visualização 2D Baseia-se nos métodos de óptica geométrica que determinam os percursos dos raios de luz Quando se usa projeção perspectiva, os raios divergem do centro de projecção, passam pelo centro de um pixel e continuam através da cena Visualização 2D Vamos ver mais pormenores sobre como um package gráfico permite especificar que parte da cena deve ser mostrada e onde, no dispositivo de display Começa-se por usar qualquer sistema de coordenadas Cartesiano para definir a cena - sistema de coordenadas do mundo O utilizador pode seleccionar uma vista especificando a região do plano XOY que contenha toda ou parte da cena Pode escolher uma única área ou um conjunto de áreas que podem ser mostradas simultaneamente ou numa sequência animada As áreas seleccionadas são mostradas em localizações específicas do dispositivo de saída É preciso usar transformações 2D para mostrar diferentes cenas nas diferentes janelas A transformação entre as coordenadas do mundo e as coordenadas normalizadas do dispositivo de saída, que permitem a visualização 2D, envolvem: O que vai ser mostrado Onde vai ser mostrado - Translações - Rotações - Mudanças de escala Janela de clipping - região da cena escolhida para ser mostrada Envolvem também procedimentos para remover as partes da cena que não foram seleccionadas - clipping Nota: inicialmente chamava-se apenas janela, mas com o aparecimento do conceito de janela como parte do ecrã que mostra a saída de um determinado processo, tornou-se necessário alterar o nome para evitar confusões Viewport - região do dispositivo de saída onde vai ser mostrada a cena Prof. Sementille 17

18 Variando a janela de clipping: Variando o viewport: Transformação de viewport Considere-se uma janela de clipping e um viewport: A transformação: Coordenadas do mundo coordenadas do dispositivo chama-se transformação de visualização 2D ou transformação janela-viewport Usam-se coordenadas normalizadas para tornar o processo independente do dispositivo O clipping em geral é feito em coordenadas normalizadas Um ponto (xw, yw) é transformado no ponto (xv, yv) É necessário também fazer o clipping da cena (eliminar tudo o que não foi seleccionado) Visualização 3D Existem muitos algoritmos de clipping Prof. Sementille 18

19 Visualização 3D Os processos envolvidos na obtenção de uma imagem de uma cena 3D são de alguma forma semelhantes a tirar uma fotografia: É preciso escolher os parâmetros de visualização: - posição (correspondente à posição da câmara, dependente da vista pretendida) Transformações de coordenadas no Pipeline de Visualização 3D Passos necessários para transformar coordenadas da cena em coordenadas do dispositivo: 1º passo - definir a transformação de visualização Coordenadas Coordenadas do mundo de visualização - orientação (correspondente à orientação da câmara) Mas em Computação Gráfica há mais flexibilidade na produção da imagem que na fotografia (ex: pode-se escolher o tipo de projeção, a localização do plano de visualização, etc.) É ainda necessário identificar as superfícies visíveis a aplicar os processos de surface rendering Algumas das operações envolvidas na visualização de uma cena 3D são semelhantes às envolvidas no pipeline de visualização 2D: - Usa-se um viewport 2D para mostrar uma projecção da cena no dispositivo de saída -Ajanela de clipping está sobre um plano de visualização - O clipping das cenas é feito em relação a um volume definido por um conjunto de planos de clipping A posição de visualização, o plano de visualização, a janela de clipping e os planos de clipping são definidos num : Coordenadas de Visualização 3D Estabelecer um sistema de coordenadas de visualização 3D é análogo a estabelecer um sistema de coordenadas de visualização 2D: 1-EstabelecerumpontoPo (xo, yo, zo) para origem: ponto de vista (viewing position) 2- Especificar um vector view-up que define a direcção yview 3- Especificar uma direcção de um outro eixo: zview Sistema de coordenadas de visualização Em geral o plano de visualização (oudeprojecção)édefinidocomosendo perpendicular ao zview A orientação do plano de visualização (e a direcção positiva de zview )é definida a partir de um vector normal N Usa-se ainda um parâmetro para definir a posição do plano de visualização zvp sobre o eixo zview Em geral o sistema de coordenadas de visualização é definido como um sistema de coordenadas de mão direita (o convencional em matemática) Sistema de mão esquerda (z aumenta para trás do ecrã) Alguns packages gráficos usam sistemas de mão esquerda Num sistema de mão direita, as rotações positivas são tais que, quando se olha para a origem ao longo de um semi-eixo positivo, uma rotação de 90º no sentido anti-horário transforma um semi-eixo positivo noutro semi-eixo positivo Três posições possíveis para o plano de visualização eixo de rotação x y z Direcção da rotação positiva y para z z para x x para y Prof. Sementille 19

20 É mais comum usar-se um sistema de coordenadas de visualização de mão direita pois tem a mesma orientação que o sistema de coordenadas do mundo Efeitos de Visualização 3D Variando os parâmetros de visualização é possível obter diferentes efeitos de visualização (por exemplo, diferentes vistas de um objecto, panning, etc.) Alguns packages gráficos usam sistemas de coordenadas do dispositivo de saída de mão esquerda, sobretudo nas coordenadas do dispositivo O sistema de coordenadas de visualização é frequentemente descrito como sistema uvn Mantendo um ponto de vista fixo e variando a direcção de N podem mostrar-se objectos em posições em torno do ponto de vista e compor uma cena Conhecendo os parâmetros de visualização que definem o sistema de coordenadas de visualização é fácil calcular a matriz que permite transformar as coordenadas do mundo (WC) em coordenadas de visualização (VC) Matriz de transformação Coordenadas Coordenadas do mundo de visualização Variando o ponto de vista e mantendo a direcção de N, obtemos um efeito de panning, como quando uma câmara segue um objecto numa cena Voltando ao Pipeline de Visualização 3D: Projeção Coordenadas de visualização A cena 3D é projectada num plano de Visualização 2D (vai haver perda de informação) 2º passo - definir a transformação de projecção? É necessário definir o volume de clipping Plano de visualização Embora já existam dispositivos de display 3D (ver artigo, A. Sullivan, 3Deep, IEEE Spectrum. Abril, 2005, pp ) na esmagadora maioria dos casos usam-se dispositivos de display 2D Prof. Sementille 20

21 Projeções Projeções paralelas e perspectivas As projeções geométricas planas têm este nome porque são obtidas com projectores lineares e superfícies planas (há outros tipos que não vamos considerar) Existem dois grandes tipos: - Projeções paralelas - Projeções perspectivas As projecções perspectivas permitem gerar imagens com mais realismo Mas envolvem cálculos mais complexos, e nem sempre são a melhor opção projecção paralela projecção perspectiva Projeções Projeções geométricas planas Projeções paralelas e perspectivas Plano de visualização Paralelas Perspectivas Plano de visualização Ortogonais Oblíquas Com 1 ponto de fuga Planta Vista frontal Cavaleira Axonométricas de Gabinete Com 2 pontos de fuga Com 3 pontos de fuga Ponto de convergência (Centro de projecção) Vista lateral Isométricas Outras Outras Nas projeções paralelas os projetores são paralelos (convergem num ponto no infinito) Nas projeções perspectivas os projetores convergem num ponto Projeções paralelas ortogonais (ou ortográficas) São projeções paralelas obtidas por projectores perpendiculares ao plano de visualização Coordenadas da projeção ortogonal Se a direção de projeção for paralela ao eixo zview quais são as coordenadas do ponto projetado? As projeções deste tipo, em que o plano de projecção é paralelo a um conjunto de faces do objecto, são frequentemente usadas em engenharia e arquitectura Planta Os ângulos e comprimentos são representados em verdadeira grandeza e podem ser medidos nas vistas Têm a desvantagem de não dar facilmente uma ideia da estrutura tridimensional dos objectos Vista frontal Vista lateral (x,y,z) Prof. Sementille 21

22 Projeções Paralelas Ortogonais Planta e alçados Projeções ortogonais axonométricas Projeções Isométricas São projeções ortogonais em que o plano de visualização não é paralelo a um conjunto de faces do objecto Dão uma ideia melhor da estrutura tridimensional do objecto Podem ser Isométricas Dimétricas Trimétricas Plano de visualização Projecção isométrica do cubo: são mostradas várias faces e as três arestas são representadas com a mesma grandeza Projeções Dimétricas Projeções Trimétricas Prof. Sementille 22

23 Janela de clipping e volume de projecção ortogonal Na fotografia, é o tipo de lente que determina que quantidade da cena é transferida para o filme View plane Em computação gráfica usa-se a janela de clipping que está sobre o plano de visualização Forma prática de construir uma projecção isométrica Os packages gráficos permitem, em geral usar janelas de clipping rectangulares paralelas aos eixos A janela de clipping permite definir o volume de visualização Volume de visualização e clipping para projecções ortogonais Projeções paralelas oblíquas São projeções paralelas obtidas por projetores oblíquos ao plano de visualização Projectores São muito usadas em engenharia e arquitetura pois: Plano de visualização Plano de clipping Janela de clipping - são fáceis de produzir - dão uma boa ideia do objeto Plano de clipping Volume de visualização finito correspondente a uma projecção ortogonal com planos de clipping à frente e atrás Plano de visualização Projeção oblíqua do cubo: são mostradas várias faces Projeção cavaleira Nesta projecção a profundidade (L1) do cubo é representada com uma grandeza igual à largura e à altura Tem a desvantagem de não parecer muito realista O ângulo theta é geralmente: 30º 45º Projeção de gabinete Nesta projecção a profundidade (L1) do cubo é representada com uma grandeza igual a metade da largura e da altura Tem a vantagem de parecer mais realista que a projecção cavaleira O ângulo theta é geralmente: 30º 45º Prof. Sementille 23

24 Projeções cavaleiras e de gabinete Projeção perspectiva Segmentos de recta com o mesmo comprimento, mas que se encontrem a distâncias diferentes do plano de visualização, projectam-se com comprimentos diferentes Em relação às projeções paralelas - Tem a vantagem de produzir imagens mais realistas - Mas não preserva proporções dos objetos - E é mais complexa Projeções perspectivas com um, dois e três pontos de fuga Ponto principal de fuga é um ponto para onde convergem as paralelas a um eixo coordenado que intersecta o plano de visualização Perspectiva de um ponto de fuga Perspectivas de um e dois pontos de fuga (frontal e angular) Perspectiva na arte A Trindade e a Virgem Mastaccio, 1427 Um ponto de fuga (perspectiva frontal) Dois pontos de fuga (perspectiva angular) Considerada a primeira pintura com perspectiva Prof. Sementille 24

25 Perspectiva com um ponto de fuga Volume de visualização e clipping para projeções perspectiva From Volume de visualização finito correspondente a uma projeção perspectiva com planos de clipping Perspectiva com dois pontos de fuga Imagem de uma cena tridimensional gerada usando projecção perspectiva 50 Bibliografia Principal Hearn, D., P. Baker, Computer Graphics with OpenGL, Addison Wesley, 2004 Hearn, D., P. Baker, Computer Graphics, 2nd. Ed., Prentice Hall, 1994 Foley, J., S. Van Dam, S. Feiner, J. Hughes, Computer Graphics, Principles and Applications, 2nd. Ed., Addison Wesley, 1991 Watt, A., F. Policarpo, The Computer Image, Addison Wesley, 1998, Visibility (slides) Santos, Beatriz Sousa, Curso de Programação Visual, (transparências), Universidade de Aveeiro, Prof. Sementille 25

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Transformações 2D

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Transformações 2D Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática Transformações 2D Computação Visual Beatriz Sousa Santos, Joaquim Madeira Transformações 2D Posicionar, orientar e escalar

Leia mais

Determinação da Visibilidade

Determinação da Visibilidade Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática Determinação da Visibilidade Beatriz Sousa Santos, J. Madeira Uma classificação Os métodos de visibilidade podem ser basicamente

Leia mais

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Visualização 3D

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Visualização 3D Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática Visualização 3D Computação Visual Beatriz Sousa Santos, J. Madeira Visualização 3D Os processos envolvidos na obtenção

Leia mais

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Visualização 3D

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Visualização 3D Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática Visualização 3D Computação Visual Beatriz Sousa Santos, J. Madeira Visualização 3D Os processos envolvidos na obtenção

Leia mais

Realidade Aumentada. Realidade Aumentada 10/09/2013. Prof. Sementille 1. O pipeline de Visualização 3D. 3. Computação Gráfica Básica

Realidade Aumentada. Realidade Aumentada 10/09/2013. Prof. Sementille 1. O pipeline de Visualização 3D. 3. Computação Gráfica Básica O pipeline Realidade Aumentada Prof. Dr. Antonio Carlos Sementille Modelagem e Visualização - Representação de objetos em 3D - Transformação de objetos e composição de cenas - Especificação de um ponto

Leia mais

Introdução ao Processamento e Síntese de imagens - Projeções

Introdução ao Processamento e Síntese de imagens - Projeções Introdução ao Processamento e Síntese de imagens - Projeções Júlio Kiyoshi Hasegawa Fontes: Esperança e Cavalcanti (22) (UFRJ) e Traina e Oliveira (24) (USP) Antonio Maria Garcia Tommaselli - notas de

Leia mais

Introdução à Computação Gráfica

Introdução à Computação Gráfica Introdução à Computação Gráfica Desenho de Construção Naval Manuel Ventura Instituto Superior Técnico Secção Autónoma de Engenharia Naval 27 Sumário Entidades Geométricas Transformações Geométricas 2D

Leia mais

Computação Gráfica Transformações Projetivas

Computação Gráfica Transformações Projetivas Computação Gráfica Transformações Projetivas Professora: Sheila Cáceres Transformações Projetivas Projetar modelos geométricos 3D numa imagem 2D, exibível em dispositivos de saída 2D Exemplo: 2 Projeção

Leia mais

Computação Gráfica - 09

Computação Gráfica - 09 Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - 9 jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav Objetos

Leia mais

aula6 Projeções Planas 2017/2 IC / UFF

aula6 Projeções Planas 2017/2 IC / UFF http://computacaografica.ic.uff.br/conteudocap2.html aula6 P p O Projeções Planas 2017/2 IC / UFF Relembrando Transformações De corpo rígido (semelhança). Distância entre 2 pontos quaisquer é inalterada.

Leia mais

Rendering de Polígonos. Determinação de Superfícies Visíveis. Back Face Culling. Back Face Culling. Back Face Culling. Back Face Culling.

Rendering de Polígonos. Determinação de Superfícies Visíveis. Back Face Culling. Back Face Culling. Back Face Culling. Back Face Culling. Determinação de Superfícies Visíveis M.C.F. de Oliveira Fontes: Hearn & Baker, Cap. 9 Curso CG, University of Leeds (Ken Brodlie): http://www.comp.leeds.ac.uk/kwb/gi21/lectures.html Rendering de Polígonos

Leia mais

Computação Gráfica - 09

Computação Gráfica - 09 Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - 9 jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav Objetos

Leia mais

Transformações Geométricas Grafos de Cena

Transformações Geométricas Grafos de Cena Transformações Geométricas Grafos de Cena Edward Angel, Cap. 4 Instituto Superior Técnico Computação Gráfica 2009/2010 1 Na última aula... Transformações Geométricas Translação Escala Rotação Espaço Homogéneo

Leia mais

Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto

Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto Computação Gráfica Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com Para que objetos tridimensionais possam ser visualizados é necessário que suas imagens sejam geradas na tela. Para isso,

Leia mais

4. Curvas Paramétricas e Transformações 2D

4. Curvas Paramétricas e Transformações 2D 4. Curvas Paramétricas e Transformações 2D Curvas Paramétricas (fonte: Wikipédia) Em matemática, uma equação paramétrica é uma forma de representar uma curva (ou, em geral, uma superfície) como a imagem

Leia mais

Transformações Geométricas. Transformações Geométricas. Sistemas de Coordenadas. Translação: M.C.F. de Oliveira Rosane Minghim 2006

Transformações Geométricas. Transformações Geométricas. Sistemas de Coordenadas. Translação: M.C.F. de Oliveira Rosane Minghim 2006 Transformações Geométricas Transformações Geométricas 2D M.C.F. de Oliveira Rosane Minghim 2006 Aplicadas aos modelos gráficos para alterar a geometria dos objetos, sem alterar a topologia Porque são necessárias:

Leia mais

Projeções: conceitos. Projetar pontos no espaço d dimensional no plano d-1 dimensional, usando um ponto especial chamado centro de projeção

Projeções: conceitos. Projetar pontos no espaço d dimensional no plano d-1 dimensional, usando um ponto especial chamado centro de projeção Projeções Projeções: conceitos Projetar pontos no espaço d dimensional no plano d-1 dimensional, usando um ponto especial chamado centro de projeção Pontos no espaço 3D projetados em um plano 2D centro

Leia mais

aula 10 Projeções Planas IC/UFF tela de um museu de Montreal

aula 10 Projeções Planas IC/UFF tela de um museu de Montreal aula 10 Projeções Planas IC/UFF - 2016 tela de um museu de Montreal Projeções PLANAS: Classificação BÁSICA: B Características: Um objeto no espaço o 3D A forma mais simples de representar um objeto 3D

Leia mais

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 6. Projeções

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 6. Projeções Computação Gráfica Engenharia de Computação CEFET/RJ campus Petrópolis Prof. Luis Retondaro Aula 6 Projeções 2 Projeções Geométricas Projeções permitem a visualização bidimensional de objetos tridimensionais.

Leia mais

Pipeline de Visualização 3D

Pipeline de Visualização 3D Pipeline de Visualização 3D André Tavares da Silva andre.silva@udesc.br Capítulo 5 de Foley Capítulo 2 de Azevedo e Conci Processo de Visualização https://www.youtube.com/watch?v=ogqam2mykng Processo de

Leia mais

3D no OpenGL. Visualização e Transformações Perspectiva. Transformações do Modelview. Processo

3D no OpenGL. Visualização e Transformações Perspectiva. Transformações do Modelview. Processo Visualização e Transformações Perspectiva 3D no OpenGL Para gerar imagens de um objeto 3D, é necessário compreender transformações perspectiva Foley & van Dam - Cap. 6 Notas de aula do Prof. Mount: aulas

Leia mais

Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas

Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas Introdução ao Processamento e Síntese de imagens -Linhas e superfícies escondidas Júlio Kiyoshi Hasegawa 26 Fontes: Rogers, D. F. Procedural Elements for Computer Graphics Introdução Linhas e superfícies

Leia mais

aula6 2018/2 IC / UFF Como representar objetos 3D em dispositivos 2D?

aula6 2018/2 IC / UFF Como representar objetos 3D em dispositivos 2D? http://computacaografica.ic.uff.br/conteudocap2.html aula6 Como representar objetos 3D em dispositivos 2D? 2018/2 IC / UFF Projeções Planas O P p 2018/2 IC / UFF aula6: Projeções Planas Material disponível

Leia mais

Transformações (Cap 4.3, 4.4 e 4.6 a 4.10)

Transformações (Cap 4.3, 4.4 e 4.6 a 4.10) 4.6 a 4.) Transformações (Cap 4.3, 4.4 e 4.6 a 4.) Instituto Superior Técnico, 26/27 Sumário Revisões Transformações Elementares Coordenadas Homogéneas Composição de Transformações Transformações em OpenGL

Leia mais

Projeções. Cap 2 (do livro texto) Aula 6 UFF

Projeções. Cap 2 (do livro texto) Aula 6 UFF Projeções Cap 2 (do livro texto) Aula 6 UFF - 2014 Projeções PLANAS: Classificação BÁSICA: B Características: Um objeto no espaço o 3D A forma mais simples de representar um objeto 3D em 2D é simplesmente

Leia mais

Sistema de coordenadas

Sistema de coordenadas Sistema de coordenadas Sistema de coordenadas Coordenadas cartesianas Coordenadas polares Transformação sistema de coordenadas Coordenadas relativas Sistema de coordenadas cartesianas Sistema de coordenadas

Leia mais

Computação Gráfica Viewing

Computação Gráfica Viewing Computação Gráfica Viewing Aluno:M arcio KassoufC rocom o Prof:R osane M inghim O que é Viewing? Processo responsável por determinar o que será exibido no dispositivo de saída, e como Fonte: Software disponível

Leia mais

Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto

Computação Gráfica. Prof. MSc. André Yoshimi Kusumoto Computação Gráfica Prof. MSc. André Yoshimi Kusumoto andrekusumoto.unip@gmail.com Para que objetos tridimensionais possam ser visualizados é necessário que suas imagens sejam geradas na tela. Para isso,

Leia mais

Visualização em 3-D - Projeções Planares

Visualização em 3-D - Projeções Planares Visualização em 3-D - Projeções Planares Projetores PRP - Centro de Projeção A n (u,v,n) - sistema de coordenadas do plano de projeção (x,y,z) - sistema de coordenadas do objeto (regra da mão direita -

Leia mais

Transformações Geométricas

Transformações Geométricas Transformações Geométricas 2D Carolina Watanabe Referências Bibliográficas FOLEY, J. D, DAM, A. V.; HUGHES, J. F. Computer Graphics Principle and dpractice, 2 a edição Material elaborado por Marcela X.

Leia mais

Transformações de Visualização 2D: Clipping. Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro

Transformações de Visualização 2D: Clipping. Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro Transformações de Visualização 2D: Clipping Antonio L. Bajuelos Departamento de Matemática Universidade de Aveiro 1 Clipping (recorte) Qualquer procedimento que identifica porções de uma figura que estão

Leia mais

Computação Gráfica II

Computação Gráfica II Computação Gráfica II Iluminação e Textura Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com Introdução Determinação da cor envolve Além das propriedades da superfícies Cor,

Leia mais

10 Visualização em 3D - Projeções

10 Visualização em 3D - Projeções INSTITUTO DE CIÊNCIAS MATEMÁTICAS E DE COMPUTAÇÃO DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA 10 Visualização em 3D - Projeções Após a criação de cenas e objetos tridimensionais o próximo passo

Leia mais

Transformações 3D. Soraia Raupp Musse

Transformações 3D. Soraia Raupp Musse Transformações 3D Soraia Raupp Musse 1 Transformações 3D Translação gltranslatef(dx, dy, dz) T(dx, dy, dz): 1 1 1 dz dy dx 2 Escala glscalef(sx, Sy, Sz) S(Sx, Sy, Sz): 1 1 Sz Sy Sx Transformações 3D Rotação

Leia mais

Enquadramento e Conceitos Fundamentais

Enquadramento e Conceitos Fundamentais Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Enquadramento e Conceitos Fundamentais Edward Angel, Cap. 1 Questão 9, exame de 29/06/11 [0.5v] Identifique e descreva os três

Leia mais

Projeções. Prof. Márcio Bueno

Projeções. Prof. Márcio Bueno Projeções Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com Projeções Visão humana: enxerga em 2D, a sensação de profundidade vem da diferença entre as vistas esquerda e direita do mesmo objeto Projeção:

Leia mais

Thanks to Isabel Harb Manssour Marcelo Cohen

Thanks to Isabel Harb Manssour Marcelo Cohen Thanks to Isabel Harb Manssour Marcelo Cohen Roteiro 1. Introdução 2. Remoção de Faces Traseiras 3. Algoritmo do Pintor 4. Algoritmo Z-Buffer 5. Árvores BSP Introdução Eliminação de superfícies escondidas

Leia mais

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 3. Transformações Geométricas

Computação Gráfica. Engenharia de Computação. CEFET/RJ campus Petrópolis. Prof. Luis Retondaro. Aula 3. Transformações Geométricas Computação Gráfica Engenharia de Computação CEFET/RJ campus Petrópolis Prof. Luis Retondaro Aula 3 Transformações Geométricas no plano e no espaço Introdução (Geometria) 2 Pontos, Vetores e Matrizes Dado

Leia mais

Câmara Virtual Simples

Câmara Virtual Simples Câmara Virtual Simples Edward Angel, Cap. 5 Instituto Superior Técnico Computação Gráfica 29/2 Na última aula... Pipeline de Visualiação 3D Câmara Virtual 2, CG&M/IST e Figuras Addison Wesley Sumário Câmara

Leia mais

Sistemas de Referência

Sistemas de Referência Sistemas de Referência Um sistema de coordenada é denominado de Sistema de Referência quando servir para alguma finalidade específica; Aspectos a serem observados na definição de um sistema de referência:

Leia mais

Modelos Geométricos Transformações

Modelos Geométricos Transformações Modelos Geométricos Transformações Edward Angel, Cap. 4 Instituto Superior Técnico Computação Gráfica 2009/2010 1 Aulas teóricas 11/03 Quinta-feira, dia 11 de Março Não vão ser leccionadas aula teóricas.

Leia mais

Enquadramento e Conceitos Fundamentais

Enquadramento e Conceitos Fundamentais Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Enquadramento e Conceitos Fundamentais Edward Angel, Cap. 1 Questão 9, exame de 29/06/11 [0.5v] Identifique e descreva os três

Leia mais

Computação Gráfica. Representação e Modelagem

Computação Gráfica. Representação e Modelagem Computação Gráfica Representação e Modelagem Professora: Sheila Cáceres Baseado nos slides da Prof. Soraia Musse Modelagem Área da Computação Gráfica que estuda a criação de modelos dos objetos reais.

Leia mais

Introdução à Computação Gráfica. Claudio Esperança Paulo Roma Cavalcanti

Introdução à Computação Gráfica. Claudio Esperança Paulo Roma Cavalcanti Introdução à Computação Gráfica Claudio Esperança Paulo Roma Cavalcanti Estrutura do Curso Ênfase na parte prática Avaliação através de trabalhos de implementação C / C++ OpenGL c/ GLUT Grau (nota) baseado

Leia mais

Transformações 3D. Soraia Raupp Musse

Transformações 3D. Soraia Raupp Musse Transformações 3D Soraia Raupp Musse 1 Transformações 3D Translação gltranslatef(dx, dy, dz) T(dx, dy, dz): 1 1 1 dz dy dx 2 Escala glscalef(sx, Sy, Sz) S(Sx, Sy, Sz): 1 1 Sz Sy Sx Transformações 3D Rotação

Leia mais

Visualização por Computador: Teoria, Prática e Aplicações

Visualização por Computador: Teoria, Prática e Aplicações Visualização por Computador: Teoria, Prática e Aplicações Noções de Geometria e Álgebra Linear Claudio Esperança Programa de Engenharia de Sistemas e Computação COPPE / UFRJ Master of Information Management,

Leia mais

USP Universidade de São Paulo

USP Universidade de São Paulo USP Universidade de São Paulo ICMC Instituto de Ciências Matemáticas e de Computação Computação Gráfica Notas Didáticas - Viewing Aluno: Marcio Kassouf Crocomo Professora Doutora Rosane Minghim São Carlos

Leia mais

Iluminação e Sombreamento

Iluminação e Sombreamento luminação e Sombreamento Computação Gráfica Carlos Guedes @ 2006 SEL/DEETC/SP Computação Gráfica 1 Computação Gráfica Carlos Guedes @ 2006 SEL/DEETC/SP Computação Gráfica http://www.oyonale.com/ldc/english/classroom.htm

Leia mais

Reflexões e Sombras em Superfícies Planares Animação e Visualização Tridimensional Prof. João Madeiras Pereira Instituto Superior Técnico 2005/2006

Reflexões e Sombras em Superfícies Planares Animação e Visualização Tridimensional Prof. João Madeiras Pereira Instituto Superior Técnico 2005/2006 Reflexões e Sombras em Superfícies Planares Animação e Visualização Tridimensional Prof. João Madeiras Pereira Instituto Superior Técnico 2005/2006 Reflexões - Motivação Ainda não é possível usar algoritmos

Leia mais

Transformações de Pontos. Computação Gráfica Prof. Dr. Paulo Roberto Gomes Luzzardi Aluna: Karina da Silva Salles

Transformações de Pontos. Computação Gráfica Prof. Dr. Paulo Roberto Gomes Luzzardi Aluna: Karina da Silva Salles Transformações de Pontos Computação Gráfica Prof. Dr. Paulo Roberto Gomes Luzzardi Aluna: Karina da Silva Salles Sumário Motivação Definição Translação Escala Rotação Reflexão Shearing Referências Motivação

Leia mais

Sumário COMPUTAÇÃO GRÁFICA E INTERFACES. Modelos e modelagem. Modelos e modelagem. Transformações Geométricas e Visualização 2D

Sumário COMPUTAÇÃO GRÁFICA E INTERFACES. Modelos e modelagem. Modelos e modelagem. Transformações Geométricas e Visualização 2D Sumário COMPUTAÇÃO GRÁFICA E INTERFACES Transformações Geométricas e Visualização D Transformações geométricas Pipeline de visualização D Transformação de coordenadas Window-Viewport Recorte (Clipping)

Leia mais

Sistemas Gráficos e Modelos

Sistemas Gráficos e Modelos Sistemas Gráficos e Modelos Edward Angel, Cap. 1 Instituto Superior Técnico Computação Gráfica 2009/2010 1 Contacto com corpo docente Nos contactos com o corpo docente de CG Indiquem o campus a que pertencem!

Leia mais

A perspectiva geométrica é uma projeção que resulta numa imagem semelhante aquela vista pelo nosso sentido da visão.

A perspectiva geométrica é uma projeção que resulta numa imagem semelhante aquela vista pelo nosso sentido da visão. PERSPECTIVA GEOMÉTRICA OU EXATA A. Introdução B. Elementos C. Tipos: paralela ou axonométrica / cônica D. Projeção paralela: isométrica, militar, cavaleira. A. Na perspectiva geométrica Utilizamos os sistemas

Leia mais

aula9 Coordenadas homogêneas e projeções 2016/2 IC / UFF

aula9 Coordenadas homogêneas e projeções 2016/2 IC / UFF http://computacaografica.ic.uff.br/conteudocap2.html aula9 P p O Coordenadas homogêneas e projeções 2016/2 IC / UFF 2D TODAS AS Transformações Lineares Bidimensionais São representadas por matrizes 2 x

Leia mais

Realismo Visual. Aula 11 UFF

Realismo Visual. Aula 11 UFF Realismo Visual Aula 11 UFF - 2018 Objetivos Melhorar o entendimento das cenas e objetos criados Possibilidade de representação de dados, objetos e cenas complexas Realismo até o nível desejado da forma

Leia mais

Nº Nome: Relação de aspecto é o quociente entre a altura e a largura de uma janela ou um viewport.

Nº Nome: Relação de aspecto é o quociente entre a altura e a largura de uma janela ou um viewport. 1º Teste Computação Gráfica LEIC/LERCI/LCI Prof. João Brisson Lopes Eng. Carlos Martinho 8 de Abril de 26 Nº Nome: Antes de começar: Identifique todas as folhas com o seu número. Responda às questões seguintes

Leia mais

Exame Tipo Computação Gráfica

Exame Tipo Computação Gráfica Exame Tipo Computação Gráfica LEIC-T Prof. Mário Rui Gomes Nº Nome: Antes de começar: Identifique todas as folhas com o seu número. Responda às questões seguintes justificando adequadamente todas as respostas.

Leia mais

Como desenharemos um objeto Real tridimensional em uma folha de papel?

Como desenharemos um objeto Real tridimensional em uma folha de papel? 1.Questionamento Como desenharemos um objeto Real tridimensional em uma folha de papel? Como faremos se quisermos mandar um desenho de uma peça para um fornecedor ou para outra seção da empresa? Os métodos

Leia mais

António Costa. Paulo Roma Cavalcanti

António Costa. Paulo Roma Cavalcanti Introdução à Computação Gráfica Preâmbulo Adaptação: Autoria: João Paulo Pereira António Costa Claudio Esperança Paulo Roma Cavalcanti Computação Gráfica Modelos Matemáticos Análise (reconhecimento de

Leia mais

Visualização 2D: - Transformação window to viewport - Clipping

Visualização 2D: - Transformação window to viewport - Clipping Visualização 2D: - Transformação window to viewport - Clipping Sistemas Gráficos/ Computação Gráfica e Interfaces 1 Transformação de Visualização (window to viewport) Objectivo: obter uma matriz de transformação

Leia mais

Projeção 3D. André Tavares da Silva. Capítulo 5 de Foley Capítulo 2 de Azevedo e Conci

Projeção 3D. André Tavares da Silva. Capítulo 5 de Foley Capítulo 2 de Azevedo e Conci Projeção 3D André Tavares da Silva andre.silva@udesc.br Capítulo 5 de Foley Capítulo 2 de Azevedo e Conci Projeção Permite ver 2D objetos 3D Elementos: Plano de Projeção Raio de Projeção Centro de Projeção

Leia mais

Introdução ao Processamento e Síntese de imagens Recorte 2D

Introdução ao Processamento e Síntese de imagens Recorte 2D 1 Introdução ao Processamento e Síntese de imagens Recorte 2D Fontes: Rogers, D. F. Procedural Elements for Computer Graphics Traina, A. J. M. & Oliveira, M. C. F. (2004) 2016 2 Recorte - (Clipping) Numa

Leia mais

Resumo. Ray Tracing. Introdução. Ray Casting Básico. Idéia

Resumo. Ray Tracing. Introdução. Ray Casting Básico. Idéia Resumo Leandro Paganotti Brazil Danilo Medeiros Eler Rosane Minghim Computação Gráfica ICMC USP 2010 Introdução Ray Casting Básico Intersecção Raio-Cena Caminhos de Reflexão e Refração Ray-Tracing Tree

Leia mais

Viewing Pipeline 2D. Viewing Pipeline 2D/3D. Viewing Pipeline 2D. Viewing (onde estamos no pipeline) Maria Cristina F. de Oliveira Rosane Minghim 2010

Viewing Pipeline 2D. Viewing Pipeline 2D/3D. Viewing Pipeline 2D. Viewing (onde estamos no pipeline) Maria Cristina F. de Oliveira Rosane Minghim 2010 Viewing Pipeline 2D Viewing Pipeline 2D/3D Maria Cristina F. de Oliveira Rosane Minghim 21 Processo de determinar quais objetos da cena serão exibidos na tela, e como Transformação da cena, definida no

Leia mais

Transformações Geométricas

Transformações Geométricas Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Transformações Geométricas Edward Angel, Cap. 4 Questão 1, exame de 29/06/11 [1.0v] Considere o triângulo T={V 1, V 2, V 3 },

Leia mais

Ray-Tracing. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 13 Apontamentos CG

Ray-Tracing. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 13 Apontamentos CG Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Ray-Tracing Edward Angel, Cap. 13 Apontamentos CG Questões Teste O método de "bump mapping" estudado nas aulas teóricas usa:

Leia mais

Exame de 1ª Época Computação Gráfica

Exame de 1ª Época Computação Gráfica Exame de 1ª Época Computação Gráfica LEIC/MEIC Ano Lectivo de 2008/2009 Prof. João Brisson Lopes Prof. Mário Rui Gomes 2 de Julho 2009 Nº Nome: Responda o mais completamente às seguintes questões justificando

Leia mais

Prof. Fernando V. Paulovich 3 de agosto de SCC Computação Gráca

Prof. Fernando V. Paulovich  3 de agosto de SCC Computação Gráca Dispositivos de Saída e SCC0250 - Computação Gráca Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade

Leia mais

Projeções e Transformações em 3D

Projeções e Transformações em 3D Projeções e Transformações em 3D Computação Gráfica DCC065 Prof. Rodrigo Luis de Souza da Silva, D.Sc. Sumário O que são projeções Conversão 3D-2D Tipos de Projeção Projeções Paralelas Projeções Isométricas

Leia mais

aula9 Perspetivas 2018/2 IC / UFF Sempre mais real Projetar em Perspectivas

aula9 Perspetivas 2018/2 IC / UFF Sempre mais real Projetar em Perspectivas http://computacaografica.ic.uff.br/conteudocap2.html aula9 Perspetivas 2018/2 IC / UFF Sempre mais real Projetar em Perspectivas Perspectivas se classificam de acordo com o numero de pontos de FUGA O que

Leia mais

. Vistas ortográficas: desenhos resultantes das projeções ortogonais do objeto

. Vistas ortográficas: desenhos resultantes das projeções ortogonais do objeto 1 Curso: Engenharia Disciplina: Desenho Técnico Prof.ª Me. Aline Ribeiro PROJEÇÕES ORTOGONAIS 1. GEOMETRIA DESCRITIVA. Método desenvolvido por Gaspard Monge no século XVIII com o objetivo de representar

Leia mais

Cap. 0. Cálculo tensorial

Cap. 0. Cálculo tensorial Cap. 0. Cálculo tensorial 1. Quantidades físicas 1.1 ipos das quantidades físicas 1. Descrição matemática dos tensores 1.3 Definição dos tensores. Álgebra tensorial 3. ensores cartesianos em D simétricos

Leia mais

Transformações Geométricas em C.G.

Transformações Geométricas em C.G. Transformações Geométricas em C.G. Cap 2 (do livro texto) Aula 3, 4 e 5 UFF - 214 Geometria Euclideana : 3D Geometria Axiomas e Teoremas Coordenadas de pontos, equações dos objetos Geometria Euclideana

Leia mais

Computação Gráfica II

Computação Gráfica II Computação Gráfica II Representação de Objetos Prof. Rodrigo Rocha prof.rodrigorocha@yahoo.com http://www.bolinhabolinha.com Pipeline de visualização 3D 1 Representação dos objetos Aramada (Wire frame)

Leia mais

2.1 Translação, rotação e deformação da vizinhança elementar Variação relativa do comprimento (Extensão)

2.1 Translação, rotação e deformação da vizinhança elementar Variação relativa do comprimento (Extensão) Cap.. Deformação 1. Deslocamento. Gradiente de deformação.1 ranslação, rotação e deformação da vizinhança elementar 3. ensor de deformação de agrange 4. ensor das pequenas deformações 4.1 Caracter tensorial

Leia mais

Shading (sombreamento) & Smooth Shading

Shading (sombreamento) & Smooth Shading Shading (sombreamento) & Smooth Shading Sistemas Gráficos/ Computação Gráfica e Interfaces 1 Shading & Smooth Shading Objectivo: calcular a cor de cada ponto das superfícies visíveis. Solução brute-force:

Leia mais

Computação Gráfica - 12

Computação Gráfica - 12 Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Computação Gráfica - 12 jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav Realismo

Leia mais

Sumário. Introdução Câmera sintética Window-to-Viewport Exercício. 29-May-13 Leandro Tonietto!2

Sumário. Introdução Câmera sintética Window-to-Viewport Exercício. 29-May-13 Leandro Tonietto!2 Câmera Sintética Leandro Tonietto Computação Gráfica Desenvolvimento Jogos e Entretenimento Digital ltonietto@unisinos.br http://professor.unisinos.br/ltonietto/jed/pgr/camerasintetica.pdf 05-13 29-May-13

Leia mais

Algoritmos de Iluminação Global

Algoritmos de Iluminação Global Sistemas Gráficos/ Computação Gráfica e Interfaces 1 Objetivo: calcular a cor de cada ponto a partir da iluminação direta de uma fonte de luz, mais a soma de todas as reflexões das superfícies próximas.

Leia mais

Recorte. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 7 Apontamentos CG

Recorte. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 7 Apontamentos CG Licenciatura em Engenharia Informática e de Computadores Computação Gráfica Recorte Edward Angel, Cap. 7 Apontamentos CG Matéria Primeiro Teste 26 de Outubro 2013 Tudo até Sombreamento (inclusivé) 26/10-9h00

Leia mais

Modelação de Sólidos. Sistemas Gráficos/ Computação Gráfica e Interfaces FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO

Modelação de Sólidos. Sistemas Gráficos/ Computação Gráfica e Interfaces FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO Modelação de Sólidos Sistemas Gráficos/ Computação Gráfica e Interfaces 1 Modelação de Sólidos Em 2D um conjunto de segmentos de recta ou curvas não formam necessariamente uma área fechada. Em 3D uma colecção

Leia mais

Perspectivas Professora Valéria Peixoto Borges

Perspectivas Professora Valéria Peixoto Borges Universidade Federal de Campina Grande Centro de Ciências e Tecnologia Agroalimentar Perspectivas Professora Valéria Peixoto Borges INTRODUÇÃO A perspectiva é um tipo especial de projeção, na qual são

Leia mais

Introdução Geral a Computação Gráfica. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina de Computação Gráfica

Introdução Geral a Computação Gráfica. Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina de Computação Gráfica Introdução Geral a Computação Gráfica Universidade Católica de Pelotas Curso de Engenharia da Computação Disciplina de 2 Introdução Geral a O que é CG? Áreas de Atuação Definição, Arte e Matemática Mercado

Leia mais

Shading (sombreamento) & Smooth Shading

Shading (sombreamento) & Smooth Shading Shading (sombreamento) & Smooth Shading Sistemas Gráficos/ Computação Gráfica e Interfaces 1 Shading & Smooth Shading Objectivo: calcular a cor de cada ponto das superfícies visíveis. Solução brute-force:

Leia mais

Visualização e Projeções

Visualização e Projeções Visualização e Projeções 35M34 Sala 3E1 Bruno Motta de Carvalho DIMAp Sala 15 Ramal 227 1 Introdução Arestas de mesmo tamanho tem tamanhos aparentes diferentes Linhas paralelas convergindo História Vasos

Leia mais

Transformações 2D. Prof. Márcio Bueno Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof.

Transformações 2D. Prof. Márcio Bueno Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof. Transformações 2D Prof. Márcio Bueno {cgtarde,cgnoite}@marciobueno.com Fonte: Material do Prof. Robson Pequeno de Sousa e do Prof. Robson Lins Transformações 2D Transformações Geométricas são a base de

Leia mais

Projeções paralelas. Professor: João Carmo

Projeções paralelas. Professor: João Carmo Projeções paralelas Professor: João Carmo Projeções paralelas Introdução As múltiplas vistas (projeções ortogonais) não mostram, de forma direta, a configuração tridimensional do objeto. Elas são mais

Leia mais

Transformações Geométricas em C.G. Claudio Esperança Paulo Roma Cavalcanti

Transformações Geométricas em C.G. Claudio Esperança Paulo Roma Cavalcanti Transformações Geométricas em C.G. Claudio Esperança Paulo Roma Cavalcanti Geometria Euclideana Geometria Sintética: Axiomas e Teoremas Por coordenadas: Álgebra Linear Geometria Euclideana Espaço Vetorial

Leia mais

A terceira dimensão. Modelagem tridimensional Elaboração tridimensional Realidade virtual

A terceira dimensão. Modelagem tridimensional Elaboração tridimensional Realidade virtual A terceira dimensão A terceira dimensão Modelagem tridimensional Elaboração tridimensional Realidade virtual 2 Modelagem tridimensional Métodos de representação tridimensional: modelos geométricos; superfícies

Leia mais

Visibilidade. Apontamentos CG + Edward Angel, Sec Instituto Superior Técnico Computação Gráfica 2009/2010

Visibilidade. Apontamentos CG + Edward Angel, Sec Instituto Superior Técnico Computação Gráfica 2009/2010 Visibilidade Apontamentos CG + Edward Angel, Sec. 7.11 Instituto Superior Técnico Computação Gráfica 2009/2010 1 Na últimas aulas Rasterização Discretização de linhas Preenchimento de polígonos Aliasing

Leia mais

Modelo gráfico do VTK: Fonte de Luz e Câmara

Modelo gráfico do VTK: Fonte de Luz e Câmara Modelo gráfico do VTK: Fonte de Luz e Câmara J. Barbosa J. Tavares Visualização Científica Fonte de Luz e Câmara Para criar uma cena 3D (render) é necessário definir pelo menos uma Fonte de Luz e uma câmara.

Leia mais

Modelo gráfico do VTK: Fonte de Luz e Câmara

Modelo gráfico do VTK: Fonte de Luz e Câmara Modelo gráfico do VTK: Fonte de Luz e Câmara J. Barbosa J. Tavares Fonte de Luz e Câmara Para criar uma cena 3D (render) é necessário definir pelo menos uma Fonte de Luz e uma câmara. Se não forem criados

Leia mais

Remoção de Superfícies Escondidas

Remoção de Superfícies Escondidas INF 66 Computação Gráfica Interativa Eliminação de Superfícies Escondidas; Anti-Aliasing Alberto B. Raposo abraposo@tecgraf.puc-rio.br http://www.tecgraf.puc-rio.br/~abraposo/inf66/index.htm Remoção de

Leia mais

ALGA /09 - Geometria Analítica 78. Geometria Analítica

ALGA /09 - Geometria Analítica 78. Geometria Analítica ALGA - 00/09 - Geometria Analítica 7 Geometria Analítica A noção de recta em R e R ; tal como a noção de plano em R já foram abordados no ensino secundário. Neste capítulo faz-se um revisão desses conceitos

Leia mais