Projeções Computação Gráfica. Projeções: conceitos Linhas Projetantes emanam do centro de...

60
Projeções Projeções Computação Gráfica

Transcript of Projeções Computação Gráfica. Projeções: conceitos Linhas Projetantes emanam do centro de...

Page 1: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

ProjeçõesProjeções

Computação Gráfica

Page 2: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções: conceitosProjeções: conceitos

Linhas Projetantes Linhas Projetantes emanam do emanam do centro de projeçãocentro de projeção, , passam por cada ponto do objeto e intersectam o passam por cada ponto do objeto e intersectam o plano plano de projeçãode projeção, formando a projeção., formando a projeção.

Page 3: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções: conceitosProjeções: conceitos

Projeção Projeção em perspectiva em perspectiva (ou(ou cônica cônica): centro de ): centro de projeção é um ponto do espaço, a ser especificado. O projeção é um ponto do espaço, a ser especificado. O objeto é deformado de forma inversamente objeto é deformado de forma inversamente proporcional à distância ao centro de projeção.proporcional à distância ao centro de projeção.

Projeção Projeção paralela paralela (ou(ou cilíndrica cilíndrica): centro de projeção ): centro de projeção no infinito (ponto ideal). Deve-se especificar um no infinito (ponto ideal). Deve-se especificar um vetor, que é a direção da projeção. Pode ser usada vetor, que é a direção da projeção. Pode ser usada para tomada de algumas medidas.para tomada de algumas medidas.

Page 4: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções: conceitosProjeções: conceitos

A projeção em perspectiva não preserva retas A projeção em perspectiva não preserva retas paralelas, com algumas exceções: retas paralelas, com algumas exceções: retas paralelas contidas num plano paralelo ao plano paralelas contidas num plano paralelo ao plano de projeção. Ângulos são preservados também de projeção. Ângulos são preservados também nesta situação.nesta situação.

A projeção paralela preserva retas paralelas; A projeção paralela preserva retas paralelas; ângulos são preservados apenas em plano ângulos são preservados apenas em plano paralelos ao plano de projeção.paralelos ao plano de projeção.

Page 5: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções em perspectivaProjeções em perspectiva

Retas paralelas que não são paralelas ao plano Retas paralelas que não são paralelas ao plano de projeção convergem para um de projeção convergem para um ponto de fugaponto de fuga. . Retas paralelas se intersectam em pontos Retas paralelas se intersectam em pontos ideais. Assim, pontos de fuga podem ser vistos ideais. Assim, pontos de fuga podem ser vistos como a transformação de pontos ideais em como a transformação de pontos ideais em pontos afins. A projeção propriamente dita, pontos afins. A projeção propriamente dita, vista no espaço euclidiano mergulhado, se vista no espaço euclidiano mergulhado, se obtém com a normalização dos pontos afins. obtém com a normalização dos pontos afins. Existem infinitos pontos de fuga, um para cada Existem infinitos pontos de fuga, um para cada possível direção de retas paralelas.possível direção de retas paralelas.

Page 6: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções em perspectivaProjeções em perspectiva

Se o feixe de retas paralelas é paralelo ao Se o feixe de retas paralelas é paralelo ao algum dos três eixos principais, o ponto de algum dos três eixos principais, o ponto de fuga é dito fuga é dito axialaxial. Podem existir, portanto, . Podem existir, portanto, apenas três pontos de fuga axiais. Os pontos de apenas três pontos de fuga axiais. Os pontos de fuga axiais aparecem no plano de projeção fuga axiais aparecem no plano de projeção quando este corta um ou mais eixos principais.quando este corta um ou mais eixos principais.

Page 7: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções em perspectivaProjeções em perspectiva

Page 8: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções em perspectivaProjeções em perspectiva

Page 9: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções em perspectivaProjeções em perspectiva

Page 10: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Existem dois tipos de projeções paralelas:Existem dois tipos de projeções paralelas: OrtográficaOrtográfica OblíquaOblíqua Na projeção paralela ortográfica, as projetantes Na projeção paralela ortográfica, as projetantes

são normais ao plano de projeção, o que não são normais ao plano de projeção, o que não acontece com a projeção paralela oblíquaacontece com a projeção paralela oblíqua ..

Page 11: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Os tipos mais comuns de projeções Os tipos mais comuns de projeções ortográficas são: vista frontal, lateral e ortográficas são: vista frontal, lateral e superior. São importantes para desenhos de superior. São importantes para desenhos de engenharia para representar partes de engenharia para representar partes de máquinas e prédios, pois as distâncias e os máquinas e prédios, pois as distâncias e os ângulos podem ser medidos a partir delas.ângulos podem ser medidos a partir delas.

Page 12: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Page 13: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Outro tipo de projeção ortográfica é a chamada Outro tipo de projeção ortográfica é a chamada axonométricaaxonométrica, que ocorre quando o plano de , que ocorre quando o plano de projeção não é ortogonal a algum eixo projeção não é ortogonal a algum eixo principal do sistema. Retas paralelas são principal do sistema. Retas paralelas são projetadas em retas paralelas, mas os ângulos projetadas em retas paralelas, mas os ângulos não são preservados. As medidas podem ser não são preservados. As medidas podem ser tomadas ao longo de cada eixo principal, em tomadas ao longo de cada eixo principal, em geral com um fator de escala distinto.geral com um fator de escala distinto.

Page 14: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Um tipo especial de projeção ortográfica Um tipo especial de projeção ortográfica axonométrica é a projeção axonométrica é a projeção isométricaisométrica. Trata-se . Trata-se de um caso especial em que o plano de de um caso especial em que o plano de projeção forma o mesmo ângulo com os três projeção forma o mesmo ângulo com os três eixos principais. As projeções dos três vetores eixos principais. As projeções dos três vetores unitários canônicos formam ângulos de 120unitários canônicos formam ângulos de 120oo entre si. Isto permite que as medições feitas na entre si. Isto permite que as medições feitas na projeção em cada eixo utilize a mesma escala.projeção em cada eixo utilize a mesma escala.

Page 15: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Page 16: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Outros tipos de projeções axonométricas: Outros tipos de projeções axonométricas: dimétricas (ex: 100,100,160) e trimétricas.dimétricas (ex: 100,100,160) e trimétricas.

Projeções Projeções OblíquasOblíquas: as projetantes não são : as projetantes não são paralelas à normal ao plano de projeção. O paralelas à normal ao plano de projeção. O plano de projeção é normal a algum eixo plano de projeção é normal a algum eixo principal. Isto significa que projeções de faces principal. Isto significa que projeções de faces paralelas a este plano preservam ângulos e paralelas a este plano preservam ângulos e distâncias.distâncias.

Page 17: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Page 18: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Projeções oblíquas permitem visões das faces Projeções oblíquas permitem visões das faces superiores, frontais e laterais, e ainda superiores, frontais e laterais, e ainda permitem que medidas de distância possam ser permitem que medidas de distância possam ser tomadas em faces não paralelas ao plano de tomadas em faces não paralelas ao plano de projeção, mas não ângulos. Geralmente as projeção, mas não ângulos. Geralmente as medidas de distância para estas faces têm um medidas de distância para estas faces têm um fator de escala associado.fator de escala associado.

Page 19: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Os dois tipos de projeções oblíquas mais Os dois tipos de projeções oblíquas mais utilizados são: utilizados são: cavaleiracavaleira e e gabinetegabinete ( (cabinetcabinet). ). Na cavaleira as projetantes formam um ângulo Na cavaleira as projetantes formam um ângulo de 45de 45oo com o plano de projeção. Isto resulta no com o plano de projeção. Isto resulta no fato de que segmentos de reta ortogonais ao fato de que segmentos de reta ortogonais ao plano de projeção possuirão o mesmo plano de projeção possuirão o mesmo comprimento que sua projeção.comprimento que sua projeção.

Page 20: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Page 21: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Na projeção paralela oblíqua gabinete as Na projeção paralela oblíqua gabinete as projetantes formam um ângulo de projetantes formam um ângulo de arctg(2)=63,4arctg(2)=63,4oo com o plano de projeção. A com o plano de projeção. A idéia deste ângulo é projetar segmentos de reta idéia deste ângulo é projetar segmentos de reta perpendiculares ao plano de projeção de forma perpendiculares ao plano de projeção de forma a reduzirem seu tamanho à metade. Reúne as a reduzirem seu tamanho à metade. Reúne as vantagens da cavaleira, mas um pouco mais vantagens da cavaleira, mas um pouco mais realista. Deve haver um fator de escala =1/2 realista. Deve haver um fator de escala =1/2 para medidas sobre retas perpendiculares ao para medidas sobre retas perpendiculares ao plano de projeção.plano de projeção.

Page 22: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Page 23: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções paralelasProjeções paralelas

Uma forma de especificar a projeção oblíqua:Uma forma de especificar a projeção oblíqua:

Page 24: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Projeções PlanaresProjeções Planares

Page 25: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

O O modelo de vista 3Dmodelo de vista 3D é a forma de especificar é a forma de especificar o volume de vista (paralelepípedo de vista ou o volume de vista (paralelepípedo de vista ou pirâmide de vista) com o objetivo tanto de pirâmide de vista) com o objetivo tanto de propiciar a projeção 2D adequada bem como propiciar a projeção 2D adequada bem como do corte e enquadramento adequados. Nesta do corte e enquadramento adequados. Nesta exposição daremos uma olhada nas exposição daremos uma olhada nas abordagens e terminologias do sistema PHIGS abordagens e terminologias do sistema PHIGS (ANSI-88).(ANSI-88).

Page 26: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Plano de projeção = Plano de projeção = plano de vistaplano de vista Ponto que fixa o plano = Ponto que fixa o plano = VRP VRP ((View Reference View Reference

PointPoint)) Normal ao plano = Normal ao plano = VPNVPN ( (View Plane NormalView Plane Normal)) O plano de vista pode ser colocado de forma O plano de vista pode ser colocado de forma

arbitrária com respeito ao sistema mundial.arbitrária com respeito ao sistema mundial. O sistema de O sistema de vistavista é definido através de três é definido através de três

vetores: vetores: nn, , vv e e uu..

Page 27: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

O O eixo n eixo n é dirigido pelo vetor VPN; o é dirigido pelo vetor VPN; o eixoeixo vv é definido como a projeção de VUP sobre é definido como a projeção de VUP sobre o plano normal a este vetor. O o plano normal a este vetor. O eixo ueixo u é é definido de forma a se obter um sistema definido de forma a se obter um sistema de coordenadas da mão direita.de coordenadas da mão direita.

Page 28: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Page 29: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Define-se então o Define-se então o retângulo de vistaretângulo de vista, , através da escolha das coordenadas através da escolha das coordenadas mínimas e máximas. O retângulo de vista mínimas e máximas. O retângulo de vista não precisa estar centralizado em relação não precisa estar centralizado em relação ao VRP (ao VRP (CWCW).).

Page 30: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Page 31: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

PRP = Projection Reference PointPRP = Projection Reference Point DOP = Direction of ProjectionDOP = Direction of Projection

Page 32: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

O parâmetro de câmera que define a projeção é o PRP O parâmetro de câmera que define a projeção é o PRP e uma indicação do tipo de projeção: se o tipo e uma indicação do tipo de projeção: se o tipo pretendido é em perspectiva, então PRP é centro de pretendido é em perspectiva, então PRP é centro de projeção. Senão, DOP é o vetor de direção dada por projeção. Senão, DOP é o vetor de direção dada por CW e PRP.CW e PRP.

O PRP é dado em coordenadas de vista, não O PRP é dado em coordenadas de vista, não mundiais. Vantagem: pode-se mover VUP ou VPN mundiais. Vantagem: pode-se mover VUP ou VPN sem se recalcular o PRP; se a projeção é cavaleira, sem se recalcular o PRP; se a projeção é cavaleira, por exemplo, não há necessidade de se recalcular por exemplo, não há necessidade de se recalcular PRP/DOP para se manter a inclinação.PRP/DOP para se manter a inclinação.

Page 33: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

O O volume de vista volume de vista limita a parte do mundo que deve limita a parte do mundo que deve ser enquadrado e projetado no plano de vista. Para a ser enquadrado e projetado no plano de vista. Para a projeção em perspectiva o volume de vista é uma projeção em perspectiva o volume de vista é uma pirâmide semi-infinita com vértice no PRP e arestas pirâmide semi-infinita com vértice no PRP e arestas passando pelas extremidades do retângulo de vista.passando pelas extremidades do retângulo de vista.

Pontos atrás de PRP não são mostrados.Pontos atrás de PRP não são mostrados. Na realidade, deveria ser um volume cônico, mas a Na realidade, deveria ser um volume cônico, mas a

pirâmide é mais tratável matematicamente.pirâmide é mais tratável matematicamente.

Page 34: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Page 35: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Para a projeção paralela o volume de vista é um Para a projeção paralela o volume de vista é um paralelepípedo com lados paralelos à direção de paralelepípedo com lados paralelos à direção de projeçãoprojeção. . Ortográfica:Ortográfica:

Page 36: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

oblíqua:oblíqua:

Page 37: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Volumes:Volumes:

Page 38: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Page 39: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Page 40: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Preparando para corte e projeção:Preparando para corte e projeção: Projeção paralela(utilizando matrizes 4X4):Projeção paralela(utilizando matrizes 4X4): 1.Transladar VRP p/ a origem.1.Transladar VRP p/ a origem. 2.Rotacionar VRC de tal forma a que o eixo 2.Rotacionar VRC de tal forma a que o eixo nn

coincida com coincida com zz o eixo o eixo uu coincida com coincida com xx e o eixo e o eixo vv coincida com o coincida com o yy..

3. Cisalhar de tal forma que a direção de projeção 3. Cisalhar de tal forma que a direção de projeção fique paralela ao eixo fique paralela ao eixo zz..

4. Transladar e escalar o volume no volume 4. Transladar e escalar o volume no volume normalizado.normalizado.

Page 41: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Modelos de Vista 3DVista 3D

Page 42: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Modelos de Vista 3DVista 3D

Page 43: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Projeção em perspectiva:Projeção em perspectiva: 1.Transladar VRP p/ a origem.1.Transladar VRP p/ a origem. 2.Rotacionar VRC de tal forma a que o eixo 2.Rotacionar VRC de tal forma a que o eixo nn

coincida com coincida com zz o eixo o eixo uu coincida com coincida com xx e o eixo e o eixo vv coincida com o coincida com o yy..

3. Transladar de forma a COP coincidir com origem.3. Transladar de forma a COP coincidir com origem. 4. Cisalhar de tal forma que a linha central do volume 4. Cisalhar de tal forma que a linha central do volume

se transforme no eixo se transforme no eixo zz.. 5. Escalar o volume de vista no volume piramidal reto 5. Escalar o volume de vista no volume piramidal reto

normalizado.normalizado.

Page 44: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Modelos de Vista 3DVista 3D

Page 45: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Modelos de Vista 3DVista 3D

Page 46: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Page 47: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Corte 3D: determinação das partes da cena que estão Corte 3D: determinação das partes da cena que estão dentro do volume de vista. Existem algoritmos de dentro do volume de vista. Existem algoritmos de corte 2D, para arestas, que podem ser generalizados corte 2D, para arestas, que podem ser generalizados para faces contra paredes de um paralelepípedo para faces contra paredes de um paralelepípedo retangular. Um algoritmo eficiente é o de retangular. Um algoritmo eficiente é o de Cohen – Cohen – Sutherland:Sutherland: a cada vértice atribui-se uma palavra de 4 a cada vértice atribui-se uma palavra de 4 bits, onde cada bit carrega informação do vértice bits, onde cada bit carrega informação do vértice pertencer a algum semi-plano determinado por cada pertencer a algum semi-plano determinado por cada reta que suporta as arestas do retângulo de vista.reta que suporta as arestas do retângulo de vista.

Page 48: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

1001 1000 1010

0001

0101

0000 0010

01100100

Bit 1: y > ymax

Bit 2: y < ymin

Bit 3: x > xmax

Bit 4: x < xmin

Note que o bit 1 é o sinal de ymax – y ; o bit 2 é o sinal de y – ymin; o bit 3 é o sinal de xmax – x e o bit 4 é o sinal de x – xmin .

Page 49: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

O algoritmo testa o código para saber se pode O algoritmo testa o código para saber se pode rejeitar ou aceitar trivialmente o segmento. rejeitar ou aceitar trivialmente o segmento. Senão, ele escolhe uma aresta (o código Senão, ele escolhe uma aresta (o código indica) e encontra a interseção com o indica) e encontra a interseção com o segmento. Então ele rejeita a parte exterior do segmento. Então ele rejeita a parte exterior do segmento ao substituir o vértice exterior pelo segmento ao substituir o vértice exterior pelo ponto de interseção. O código também ponto de interseção. O código também diferencia o lado exterior do lado interior. O diferencia o lado exterior do lado interior. O algoritmo então calcula o código do novo algoritmo então calcula o código do novo vértice e vai para a próxima iteração.vértice e vai para a próxima iteração.

Page 50: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Outros algoritmos, como o de Outros algoritmos, como o de Cyrus-BeckCyrus-Beck e o de e o de Liang-BarskyLiang-Barsky utilizam retas paramétricas e o produto utilizam retas paramétricas e o produto escalar para determinação de visibilidade de cada escalar para determinação de visibilidade de cada segmento. Eles são algoritmos mais modernos e segmento. Eles são algoritmos mais modernos e geralmente mais eficientes que o de Cohen-geralmente mais eficientes que o de Cohen-Sutherland. Todos estes algoritmos se estendem para Sutherland. Todos estes algoritmos se estendem para o paralelepípedo retangular. No caso o paralelepípedo o paralelepípedo retangular. No caso o paralelepípedo é normalizado: é normalizado:

[-1,1] [-1,1] X X [-1,1] [-1,1] X X [0,1][0,1]

Page 51: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

O código passa a ter 6 bits :O código passa a ter 6 bits : Paralela:Paralela:

Bit 1: y > 1

Bit 2: y < -1

Bit 3: x > 1

Bit 4: x < -1

Bit 5: z < -1

Bit 6: z > 0

Page 52: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Perspectiva:Perspectiva:

Bit 1: y > -z

Bit 2: y < z

Bit 3: x > -z

Bit 4: x < z

Bit 5: z < 0

Bit 6: z > zmax

Page 53: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Fazendo o corte em Fazendo o corte em coordenadas homogêneascoordenadas homogêneas:: Razões: Razões: eficiênciaeficiência, já que os algoritmos para , já que os algoritmos para

paralelepípedo retangular são mais eficientes; paralelepípedo retangular são mais eficientes; também são implementados (pelo menos a também são implementados (pelo menos a parte central) em hardware; o corte pode não parte central) em hardware; o corte pode não ser feito corretamente para operações ser feito corretamente para operações homogêneas não usuais, como o que pode homogêneas não usuais, como o que pode ocorrer com nurbs.ocorrer com nurbs.

Page 54: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

A transformação do volume piramidal no A transformação do volume piramidal no paralelepípedo pode é projetiva, ou seja, pode paralelepípedo pode é projetiva, ou seja, pode ser representada no bloco de perspectiva da ser representada no bloco de perspectiva da matriz 4x4, seguida de uma normalização para matriz 4x4, seguida de uma normalização para pontos afins. Para simplificar o entendimento, pontos afins. Para simplificar o entendimento, utilizaremos o modelo 3D do livro de A. utilizaremos o modelo 3D do livro de A. Watt /M. Watt.Watt /M. Watt.

Page 55: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Page 56: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Para transformar este tronco de pirâmide no Para transformar este tronco de pirâmide no paralelepípedo canônico, deve-se aplicar uma paralelepípedo canônico, deve-se aplicar uma transformação de coordenadas de vista para transformação de coordenadas de vista para coordenadas de coordenadas de telatela, que apresenta uma divisão de , que apresenta uma divisão de xx e e yy por por zz. A transformação visa a facilitar as operações . A transformação visa a facilitar as operações de corte, interpolação linear e ordenação de de corte, interpolação linear e ordenação de profundidade (z-buffer) para visibilidade. Newman profundidade (z-buffer) para visibilidade. Newman and Sproul ‘73 mostraram que a coordenada and Sproul ‘73 mostraram que a coordenada zz deve deve ser transformada através de uma expressão do tipo: ser transformada através de uma expressão do tipo:

zzss =A + B/z =A + B/zee

Page 57: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Esta transformação de z leva retas em retas e Esta transformação de z leva retas em retas e planos em planos. Ela também preservará a planos em planos. Ela também preservará a orientação da profundidade, desde que orientação da profundidade, desde que BB<0. <0. Forçando com que a transformação leve os Forçando com que a transformação leve os vértices extremos da pirâmide nos vértices do vértices extremos da pirâmide nos vértices do paralelepípedo retangular [-1,1] paralelepípedo retangular [-1,1] X X [-1,1] [-1,1] X X [0,1], encontramos o valor de [0,1], encontramos o valor de AA e e BB. A seguir . A seguir mostramos como ficam as transformações de mostramos como ficam as transformações de vista para tela (3D->3D):vista para tela (3D->3D):

Page 58: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

e

es hz

xDx

DF

zD

Fz es

1

e

es hz

yDy

Page 59: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

Para a transformação ser incorporada na matriz Para a transformação ser incorporada na matriz 4x4, devemos separar a parte linear da não 4x4, devemos separar a parte linear da não linear, utilizando as coordenadas homogêneas, linear, utilizando as coordenadas homogêneas, em dois passos:em dois passos:

x =xx =xe e , y =y, y =ye e , z=, z=((hFzhFzee )/[)/[DD((F-DF-D)])] – hF – hF/(/(F-DF-D))

w=hzw=hzee//DD

E aí segue-se o passo da divisão de perspectiva: E aí segue-se o passo da divisão de perspectiva: xxs s =x/w, y=x/w, ys s = y/w, z= y/w, zss= z/w. = z/w.

Esta é uma normalização de ponto afim.Esta é uma normalização de ponto afim.

Page 60: Projeções Computação Gráfica. Projeções: conceitos  Linhas Projetantes emanam do centro de projeção, passam por cada ponto do objeto e intersectam o.

Modelos de Vista 3DModelos de Vista 3D

A matriz da parte linear da transformação então fica assim:A matriz da parte linear da transformação então fica assim:

000

)(00

0010

0001

D

hDF

hF

DFD

hFM