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

Documentos relacionados
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. Transformações 2D

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

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

Sist. Coordenadas Câmera (SCC)

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

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

Visualização. - Aula 4 -

Pipeline de Visualização Câmara Virtual

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

Câmara Virtual Simples

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

Computação Gráfica - OpenGl 02

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

Determinação da Visibilidade

Câmara Virtual. Licenciatura em Engenharia Informática e de Computadores Computação Gráfica. Edward Angel, Cap. 5 Apontamentos CG

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

Sistemas Gráficos e Modelos

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

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

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

Enquadramento e Conceitos Fundamentais

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

Enquadramento e Conceitos Fundamentais

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

Visualização e Projeções

Projeções. Prof. Márcio Bueno

Aula9 e 10. Projeções Planas. Como representar objetos 3D em dispositivos 2D? 2019/1 IC / UFF. Paginas 91 a 101 livro texto de computacao grafica

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

Sistema de coordenadas

Pipeline de Visualização Câmara Virtual

Computação Gráfica. Licenciatura em Engenharia Informática e de Computadores Alameda/Taguspark. 1º Exame 29 Junho de 2010

Computação Gráfica Viewing

1º Teste de Computação Gráfica 3º Ano

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

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

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

Projeções e Visualização

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

Transformações Geométricas Grafos de Cena

Perspectivas Cap 2 (do livro texto) Aula 7 UFF

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

Pipeline de Visualização 3D

Pipeline de Visualização Câmara Virtual

Cidália Fonte Faculdade de Ciências e Tecnologia da Universidade de Coimbra

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

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

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

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

Instituto Tecnológico de Aeronáutica. Prof. Carlos Henrique Q. Forster Sala 121 IEC. Luiz Felipe Simões Hoffmann

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

Computação Gráfica - 09

Computação Gráfica OpenGL 05 3D

EXAME DE GEOMETRIA DESCRITIVA A - Código 708 / ª Fase EXERCÍCIO 1

Perspectivas Professora Valéria Peixoto Borges

GDC I AULA TEÓRICA 07

Transformações Geométricas

modelos rquicos Aula 5 Sistemas Gráficos e Interactivos Instituto Superior de Engenharia do Porto Paulo Gandra de Sousa

Transformações Geométricas

Computação Gráfica - 09

SISTEMAS DE PROJECÇÃO O QUE É UMA PROJECÇÃO?

UNIVERSIDADE FEDERAL DO PARANÁ SETOR DE CIÊNCIAS EXATAS DEPARTAMENTO DE EXPRESSÃO GRÁFICA PROF. ANDERSON ROGES TEIXEIRA GÓES GEOMETRIA NO ENSINO

Disciplina: Computação Gráfica Prof. Dr. Paulo R. G. Luzzardi. Universidade Católica de Pelotas Centro Politécnico Ciência da Computação

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

Projecção. Computação Gráfica. CG, JS & 2006 ISEL/DEETC/SP Computação Gráfica

Modelos Geométricos Transformações

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

Programação Gráfica Cap 2

AGRUPAMENTO DE ESCOLAS DA SÉ GUARDA PLANIFICAÇÃO A MEDIO PRAZO DE GEOMETRIA DESCRITIVA A 11º ANO TURMA: B ANO LECTIVO 2016/2017

2º Exame. Computação Gráfica

Computação Gráfica Módulo III Geometria

Transformações geométricas

Prova Fundamentos Computação Gráfica

Perspectiva. Perspectiva é o método de representação gráfica dos objetos que apresenta sua forma no modo mais próximo como são vistos.

Desenho técnico I. Faculdade Educacional de Medianeira. Curso: Agronomia. Disciplina: Desenho técnico. Aula 02 - Normatização

Curso de Computação Gráfica (CG) 2014/2- Cap 2 parte 2 Transformações no espaço e projeções Trabalho 5 (individual) - Gabarito

Tempo Conteúdos Atividades/Estratégias Objetivos Gerais

Visualização 3D. Soraia Raupp Musse

7. Projeções Geométricas e Visualização 3D

Prof. Regis de Castro Ferreira

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

USP Universidade de São Paulo

Escola Secundária Rainha Santa Isabel Estremoz

Transformações Geométricas

DESENHO TÉCNICO MECÂNICO I. Aula 02 Projeção, vistas, diedros. Desenho Técnico Mecânico I

GDC I /2019 (1º semestre) Docente: Professor Luís Mateus Material de apoio: (

P E R S P E C T I V A S

Exame de Época Especial Computação Gráfica

4. Superfícies e sólidos geométricos

GDC I AULA TEÓRICA 3

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

Perspectiva / / Perspectiva Isométrica. Fonte: Miceli, Perspectiva Cavaleira. Fonte: Miceli, 2008.

Transformações Geométricas para Visualização 3D

exercícios de perspectiva linear

Perspectiva. Perspectiva Isométrica. Fonte: Miceli, Perspectiva Cavaleira. Fonte: Miceli, 2008.

Curso Superior de Tecnologia em Refrigeração, Ventilação e Ar Condicionado Disciplina: Desenho Técnico Tema: Projeções, Perspectivas, Vistas e

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

APOSTILA 3D (notas de aula)

FACULDADE DE ARQUITECTURA DA UNIVERSIDADE TÉCNICA DE LISBOA ÁREA CIENTÍFICA DE DESENHO E COMUNICAÇÃO GRUPO DE DISCIPLINAS DE GEOMETRIA

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

Transcrição:

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 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) - 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 projecção, a localização do plano de visualização, etc.) 2

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 do mundo Coordenadas de visualização 2º passo - definir a transformação de projecção É ainda necessário identificar as superfícies visíveis a aplicar os processos de surface rendering 3

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 - A janela de clipping está sobre um plano de visualização - MAS 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 : Sistema de coordenadas de visualização 4

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- Estabelecer um ponto Po (xo, yo, zo) para origem: posição do observador ou ponto de vista (viewing position) 2- Especificar um vector view-up que define a direcção y view 3- Especificar uma direcção de um outro eixo: z view 5

Em geral o plano de visualização (ou de projecção) é definido como sendo perpendicular ao z view A orientação do plano de visualização (e a direcção positiva de z view ) é definida a partir de um vector normal N Usa-se ainda um parâmetro para definir a posição do plano de visualização z vp sobre o eixo z view Três posições possíveis para o plano de visualização 6

Em geral o sistema de coordenadas de visualização é definido como um sistema de coordenadas de mão direita (o convencional em Matemática) Alguns packages gráficos usam sistemas de mão esquerda Sistema de mão esquerda (z aumenta para trás do ecrã) 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 eixo de rotação x y z Direcção da rotação positiva y para z z para x x para y 7

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.) Mantendo um ponto de observação fixo e variando a direcção de N podem mostrar-se objectos em posições em torno do ponto de observação e compor uma cena 8

Variando o ponto de observação e mantendo a direcção de N, obtemos um efeito de panning, como quando uma câmara segue um objecto numa cena 9

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) Coordenadas do mundo Matriz de transformação Coordenadas de visualização 10

Pipeline de Visualização 3D: Coordenadas de visualização? 2º passo - definir a transformação de projecção É necessário definir o volume de clipping 11

Projecção A cena 3D é projectada num plano de visualização 2D (vai haver perda de informação) Plano de visualização Embora já existam dispositivos de display 3D (ver artigo, A. Sullivan, 3Deep, IEEE Spectrum. Abril, 2005, pp. 30-35) na esmagadora maioria dos casos usam-se dispositivos de display 2D 12

Projecções As projecções geométricas planas têm este nome porque são obtidas com rectas projectantes e superfícies planas Há outros tipos que não vamos considerar Existem duas classes de projecções geométricas planas: - Projecções paralelas - Projecçõ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! 13

Projecções paralelas e perspectivas projecção paralela projecção perspectiva 14

Projecções Projecções geométricas planas Paralelas Perspectivas Ortogonais Oblíquas Com 1 ponto de fuga Planta Vista frontal Vista lateral Axonométricas Cavaleira de Gabinete Outras Com 2 pontos de fuga Com 3 pontos de fuga Isométricas Outras 15

Projecções paralelas e perspectivas Plano de visualização Plano de visualização Ponto de convergência (Centro de projecção) Nas projecções paralelas as rectas projectantes são paralelas, i.e., convergem num ponto a uma distância infinita. Nas projecções perspectivas as rectas projectantes convergem no centro de projecção. 16

Projecções paralelas ortogonais (ou ortográficas) São projecções paralelas obtidas por projectores perpendiculares ao plano de projecção As projecçõ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 Alguns ângulos, distâncias e áreas são representados em verdadeira grandeza e podem ser directamente medidos nas vistas Vista lateral Têm a desvantagem de não dar facilmente uma ideia da estrutura tridimensional dos objectos Vista frontal 17

Coordenadas da projecção ortogonal Se a direcção de projecção for paralela ao eixo z view quais são as coordenadas do ponto projectado? (x,y,z) 18

Projecções Paralelas Ortogonais 19

Planta e alçados 20

Projecções ortogonais axonométricas São projecçõ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 21

Projecções Isométricas 22

Projecções Dimétricas 23

Projecções Trimétricas 24

Forma prática de construir uma projecção isométrica 25

Orthographic projections [van Dam] 26

Orthographic projections [van Dam] 27

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 Os packages gráficos permitem, em geral usar janelas de clipping rectangulares e paralelas aos eixos A janela de clipping permite definir o volume de visualização 28

Volume de visualização e clipping para projecções ortogonais Plano de clipping Janela de clipping Plano de clipping Volume de visualização finito correspondente a uma projecção ortogonal com planos de clipping à frente e atrás 29

Projecções paralelas oblíquas São projecções paralelas obtidas por rectas projectantes oblíquas ao plano de visualização São muito usadas em engenharia e arquitectura pois: Projectores Plano de visualização são fáceis de produzir dão uma boa ideia do objecto Plano de visualização Projecção oblíqua do cubo: são mostradas várias faces 30

Projecção cavaleira Nesta projecção a profundidade (L 1 ) do cubo é representada com uma grandeza igual à largura e à altura Tem a desvantagem de não parecer muito realista O ângulo Φ é geralmente: Φ = 30º Φ = 45º 31

Projecção de gabinete Nesta projecção a profundidade (L 1 ) 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 Φ é geralmente: Φ = 30º Φ = 45º 32

Projecções cavaleiras e de gabinete 33

Projecçã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 projecções paralelas - Tem a vantagem de produzir imagens mais realistas - Mas não preserva proporções dos objectos - E é mais complexa 34

Perspective projection [van Dam] 35

Projecções perspectivas com um, dois e três pontos de fuga Ponto principal de fuga é um ponto para onde convergem as rectas paralelas a um eixo coordenado que intersecta o plano de projecção n. de pontos de fuga principais: n. de eixos coordenados intersectados pelo plano de projecção 36

Vanishing points [van Dam] 37

Vanishing points [van Dam] 38

Perspectiva com um ponto de fuga 39

Perspectivas com um e dois pontos de fuga (frontal e angular) Um ponto de fuga (perspectiva frontal) Dois pontos de fuga (perspectiva angular) 40

Perspectiva na arte A Trindade e a Virgem Mastaccio, 1427 Considerada a primeira pintura com perspectiva 41

Perspectiva com um ponto de fuga From http://www.sanford-artedventures.com 42

Volume de visualização e clipping para projecções perspectiva Volume de visualização finito correspondente a uma projecção perspectiva com planos de clipping 43

Imagem de uma cena tridimensional gerada usando projecção perspectiva 44

Matemática das Projecções As projecções podem aplicar-se através de multiplicação de matrizes de projecção 4x4 (em coordenadas homogéneas) Isto permite a sua combinação com matrizes correspondentes às transformações estudadas Animações Projecções mais complexas decompostas numa sequência de operações mais simples Vamos considerar casos simples de projecções perspectivas e ortogonais com plano de visualização (ou projecção) paralelos ao plano xoy 45

Projecção perspectiva com plano de projecção z=d P (x, y, z) - ponto original P p (x p, y p, z p ) - ponto projectado x Plano z=d P (x,y,z) Por semelhança de triângulos: x p x p /d = x / z y p /d = y / z cop d z Multiplicando por d: x p = d. x = x z z / d y y p P y p = d. y = y z z / d A divisão por z implica que a projecção de objectos mais distantes seja menor 46

Projecção perspectiva com plano de projecção z=d e centro de projecção na origem P (x, y, z) - ponto original P p (x p, y p, z p ) - ponto projectado x Plano z=d x p P (x,y,z) Todos os valores de z são possíveis excepto z=0 cop d z A projecção pode ser representada como: y y p P 1 0 0 0 M pers = 0 1 0 0 0 0 1 0 0 0 1/d 0 P p = M pers. P Multiplicando P por M pers obtém-se o ponto projectado FAZER na AULA! 47

Projecção perspectiva com plano de projecção z=0 e centro de projecção em z=-d P (x, y, z) - ponto original P p (x p, y p, z p ) - ponto projectado Por semelhança de triângulos: x p /d = x / (z + d) y p /d = y / (z + d) Multiplicando por d: x p = d. x = x z + d z / d +1 y p = d. y = y z + d z / d + 1 1 0 0 0 M pers = 0 1 0 0 0 0 0 0 0 0 1/d 1 Multiplicando P por M pers obtém-se o ponto projectado FAZER na AULA! 48

Esta formulação permite fazer d tender para, obtendo-se a matriz de projecção paralela ortogonal num plano de projecção em z= 0: Como são as coordenadas do ponto projectado? Estávamos à espera deste resultado? 49

OpenGL (Pré-3.1) Projecção Paralela Ortogonal A direcção de projecção é definida pelo vector (0, 0, -1) e é paralela ao eixo ZZ O plano de projecção é o plano XOY (z=0) O volume de visualização (i.e., as faces do paralelepípedo) é definido por glortho( left, right, bottom, top, near, far ); [OpenGL - The Red Book] 50

OpenGL (Pré-3.1) Projecção Paralela Ortogonal [OpenGL - The Red Book] Distâncias (com sinal) relativamente à origem: right > left, top > bottom, e far > near (atenção!) Os planos de clipping z = -near e z = -far podem não ter o mesmo sinal. Canto inferior esquerdo da janela definida no plano frontal de clipping (left, bottom, -near) Canto superior direito da janela definida no plano frontal de clipping (right, top, -near) 51

OpenGL (Pré-3.1) Exemplo Volume de visualização cúbico e de lado 2 glmatrixmode( GL_PROJECTION ); glloadidentity( ); glortho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0); Quais são os valores por omissão (default)? 52

OpenGL (Pré-3.1) Projecção Perspectiva O observador encontra-se na origem do sistema de coordenadas A olhar na direcção do semi-eixo negativo dos ZZ [OpenGL - The Red Book] 53

OpenGL (Pré-3.1) Projecção Perspectiva O observador encontra-se na origem do sistema de coordenadas A olhar na direcção do semi-eixo negativo dos ZZ O volume de visualização (i.e., as faces da pirâmide truncada) é definido por glfrustum( left, right, bottom, top, near, far ); [OpenGL - The Red Book] 54

OpenGL (Pré-3.1) Projecção Perspectiva [OpenGL - The Red Book] Os planos de clipping z = - near (frontal) e z = - far (à rectaguarda) são definidos tendo em atenção: far > near > 0 Canto inferior esquerdo da janela definida no plano frontal de clipping (left, bottom, -near) Canto superior direito da janela definida no plano frontal de clipping (right, top, -near) 55

Clipping planes [van Dam] 56

OpenGL (Pré-3.1) Projecção Perspectiva Definir um volume de visualização glmatrixmode( GL_PROJECTION ); glloadidentity( ); glfrustum( -1.0, 1.0, -1.0, 1.0, 1.0, 5.0 ); Quais são os valores por omissão (default)? O observador (centro de projecção) não pode estar localizado no interior do volume de visualização. 57

OpenGL (Pré-3.1) Funções auxiliares [OpenGL - The Red Book] gluperspective( fov, aspect, near, far ); A sua utilização pode não ser fácil 58

OpenGL (Pré-3.1) Funções auxiliares [OpenGL - The Red Book] glulookat( eyex, eyey,eyez, atx, aty, atz, upx, upy, upz); A sua utilização pode não ser fácil 59

OpenGL / WebGL As funções auxiliares das versões anteriores já não existem!! É necessário: Posicionar o observador Model-View Matrix Seleccionar o tipo de projecção Projection Matrix Estabelecer o volume de visualização de acordo com a projeccção View-Volume Funções auxiliares!! O que está definido por omissão? 60

OpenGL / WebGL - Default Projecção Paralela Ortogonal Observador a uma distância infinita da origem Olha na direcção do semi-eixo negativo ZZ Volume de Visualização Cubo centrado na origem Arestas de comprimento 2 [Ed Angel] 61

OpenGL / WebGL Como visualizar primitivas que estejam fora do volume de visualização? Aplicar translações apropriadas E se quisermos ver uma face lateral de um modelo? Aplicar rotações apropriadas Estamos a alterar a Model-View Matrix!! Ordem dos produtos matriciais Funções auxiliares para estabelecer e multiplicar as matrizes 62

OpenGL / WebGL E se quisermos uma projecção perspectiva? Converter na projecção paralela ortogonal Aplicar uma transformação apropriada a todos os modelos da cena E ao volume de visualização perspectivo É só efectuar produtos matriciais e obter a matriz global de transformação CPU ou GPU 63

OpenGL / WebGL modelview transformation projection transformation perspective division 4D 3D clipping default cube projection 3D 2D [Ed Angel] 64

OpenGL / WebGL Projecção Paralela Ortogonal Volume de Visualização para a Projecção Paralela Ortogonal ortho(left,right,bottom,top,near,far) [Ed Angel] 65

OpenGL / WebGL Projecção Paralela Ortogonal Volume de Visualização para a Projecção Paralela Ortogonal ortho(left,right,bottom,top,near,far) [Ed Angel] 66

OpenGL / WebGL Projecção Paralela Ortogonal 2 passos: T(-(left+right)/2, -(bottom+top)/2,(near+far)/2)) S(2/(left-right),2/(top-bottom),2/(near-far)) P = ST = Matriz de Projecção: 2 right left 0 0 0 0 2 top bottom 0 0 0 0 2 near 0 far right left right left top bottom top bottom far near far near 1 P = M orth ST [Ed Angel] 67

OpenGL / WebGL Projecção Perspectiva Observador na origem Olhando na direção do semi-eixo negatvo ZZ frustum(left,right,bottom,top,near,far); [Ed Angel] 68

OpenGL / WebGL Projecção Perspectiva Observador na origem Olhando na direção do semi-eixo negatvo ZZ perspective(fovy,aspect,near,far); [Ed Angel] 69

OpenGL / WebGL Projecção Perspectiva M = 1 0 0 0 0 1 0 0 0 0 0 0 1 0 1 0 [Ed Angel] 70

OpenGL / WebGL Generalização N = 1 0 0 0 0 1 0 0 0 0 0 0 α β 1 0 [Ed Angel] Convertendo para coordenadas cartesianas, o ponto (x, y, z, 1) corresponde a x = x/z y = y/z z = -(a+b/z) cuja projecção ortogonal é (x, y, 0), como desejado 71

OpenGL / WebGL Generalização Seleccionando near far a = far near b = 2near far near far o plano near é mapeado em z = -1 o plano far é mapeado em em z =1 e as faces laterais são mapeadas em x = 1, y = 1 Obtém-se o volume de visualização definido por omissão!! 72

OpenGL / WebGL Generalização distorted object projects correctly original clipping volume original object new clipping volume [Ed Angel] 73

Exemplo [Andy van Dam] 74

Exemplos O efeito da perspectiva [Andy van Dam] 75

Exemplo O efeito da perspectiva [Andy van Dam] 76

Principal bibliografia D. Hearn and M. P. Baker, Computer Graphics with OpenGL, 3 rd Ed., Addison-Wesley, 2004 E. Angel and D. Shreiner, Introduction to Computer Graphics, 6 th Ed., Pearson Education, 2012 J. Foley et al., Introduction to Computer Graphics, Addison-Wesley, 1993 D. Rogers and J. Adams, Mathematical Elements for Computer Graphics, 2 nd Ed., McGraw-Hill, 1990 77