Visualização 3D: Projecções
Transcript of Visualização 3D: Projecções
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
1
Visualização 3D: Projecções
Sistemas Gráficos/
Computação Gráfica e Interfaces
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
2
Pipeline de Visualização
Projecção: é uma transformação que mapeia de um espaço dimensional para um de menor dimensão (ex: 3D 2D).
Plano de Projecção: plano no qual é feita a projecção.
Centro de projecção (CoP): posição do observador ou câmara em relação ao plano de projecção.
Clipping no espaço 3D
(volume de visualização)
Coordenadas mundo (3D) Projectar para o
plano de projecçãoTransformação para Viewport
Coordenadas 2D do dispositivo de
visualização
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
3
Definição de uma vista arbitrária 3DO plano de projecção é caracterizado por um ponto no plano designado de view reference point (VRP) e pela normal ao plano view plane normal (VPN).
O sistema de eixos v,n,u é definido no plano de projecção. É o eixo de referência para efectuar a projecção.
O vector VUP permite ao utilizador indicar a direcção da projecção. Os vectores v e u são obtidos a partir de n e VUP.
Janela de visualização definida no plano de projecção. Apenas os elementos projectados no interior desta janela são transformados para o viewport.
CW: centre of window
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
4
Projecção
Perspectiva: a distância de CoP ao plano de projecção éfinita
Paralela: a distância de CoP ao plano de projecção é infinita
A projecção é definida por raios de projecção que saem do centro de projecção, passando por cada ponto do objecto e intersectando o plano de projecção.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
5
Volume de visualizaçãoCentro de projecção CoP é também designado de PRP (projection reference point). O ponto é definido em relação a VRP.
View Volume:limita a região do espaço que vai ser visível (operação de clipping). Para a projecção perspectiva tem a forma de uma pirâmide.
View Volume para a projecção paralela tem o formato de um paralelepípedo.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
6
ProjecçõesProjecção Perspectiva: Distância do Centro de Projecção ao plano de projecção é finito.
Projecção Paralela: Distância do Centro de Projecção ao plano de projecção é infinito.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
7
ProjecçõesPerspectiva
Semelhante ao sistema fotográfico/sistema de visão humano. Na projecção o tamanho dos objectos varia inversamente com a distância ao centro de projecção.
Vantagem: aspecto realista.Desvantagens:
- não é útil para registar a forma e as dimensões exactas dos objectos;- não se pode obter as distâncias reais;- os ângulos só são preservados apenas nas faces do objecto paralelas ao plano de projecção;- linhas paralelas normalmente não são projectadas como paralelas.
ParalelaVantagens:
- as projecções permitem a medição exacta das dimensões do objecto;- linhas paralelas mantém-se paralelas;
Desvantagens:- menos realista;- os ângulos só são preservados apenas nas faces do objecto paralelas ao plano de projecção.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
8
Projecção em PerspectivaAs projecções em perspectiva são caracterizadas pelo número de Pontos de Fuga
principais, ou seja em x, y e z.
Para ter um ponto de fuga principal o plano de projecção tem de intersectar o eixo correspondente. Para ter apenas um ponto de fuga, por exemplo em z, o plano de projecção tem de ser paralelo aos restantes eixos.
Verifica-se que as projecções têm apenas um ponto de fuga principal porque as rectas paralelas a x e y não convergem.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
9
Projecção em Perspectiva
Plano de projecção corta apenas o plano z
Plano de projecção corta o plano z e xApenas as linhas paralelas ao eixo y não convergem para um ponto.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
10
Projecção ParalelaCaracterizada pela normal ao plano de projecção e direcção dos raios de projecção.
Normal ao plano de projecção e direcção da projecção coincidem
Normal ao plano de projecção e direcção da projecção não coincidem
Três projecções ortográficas: topo, frontal e lateral.
Em cada uma das projecções o plano de projecção é perpendiculares a um dos eixos de coordenadas.
Utilização: desenho técnico. Permite medir distâncias e ângulos correctamente.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
11
Projecção Paralela OrtográficaProjecção Ortográfica Axonométrica
Os planos de projecção não são paralelos aos eixos de coordenadas, mostrando várias faces do objecto na mesma projecção.
• Têm alguma analogia com a projecção em perspectiva, mas diferem no facto de o tamanho do objecto não depender da sua distância ao centro de projecção.
• O paralelismo entre as arestas mantém-se.
Projecção Isométrica (Ortográfica Axonométrica): Nesta projecção a normal ao plano de projecção (bem como a direcção de projecção) faz um ângulo igual com todos os eixos de coordenadas.
Se a Normal ao plano de projecção for (dx,dy,dz) então |dx| = |dy| = |dz|. Existem apenas 8 direcções que satisfazem este requisito, uma em cada octante.
Projecção Isométrica com direcção de projecção (1,-1,-1)
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
12
Projecção Paralela - ObliquaProjecção Paralela Obliqua
1. O plano de projecção é perpendicular a um dos eixos de coordenadas2. A direcção de projecção não coincide com nenhum dos eixos.
CavaleiraA direcção da projecção faz um ângulo de 45º com o plano de projecção. As linhas perpendiculares ao plano de projecção mantêm a sua dimensão.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
13
Projecção Paralela - ObliquaGabinete
A direcção da projecção faz um ângulo de 63.4º com o plano de projecção. As linhas perpendiculares ao plano de projecção são projectadas com metade do seu tamanho. Resultam projecções mais realistas do que com a cavaleira.
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
14
Volume de Visualização
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
15
Volume de Visualização
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
16
Volume de Visualização
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
17
Cálculo da Projecção PerspectivaPerspectiva com um ponto de fuga:
– Plano de Projecção normal ao eixo z em z=d;– CoP em z=0
Podemos escrever:
zx
dxp =
zy
dyp =e
Resultando:
dzx
zxdxp /.==
dzy
zydyp /.==
A distância d é apenas um factor de escala aplicado a x e y. A matriz de transformação Mper:
=
0/100010000100001
d
M per
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
18
Cálculo da Projecção PerspectivaMultiplicando o ponto P=[x y z 1]T por Mper obtém-se o ponto em coordenadas homogéneas:
==
1
.
0/100010000100001
.zyx
d
PM
WZYX
per ou
=
dzzyx
WZYX
.
Dividendo por W:
=
d
dzydzx
zyx
p
p
p
/
/
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
19
Cálculo da Projecção PerspectivaPerspectiva (ainda com um ponto de fuga):
– Plano de Projecção normal ao eixo z em z=0;– CoP em z= - d
Podemos escrever:
dzx
dxp
+=
dzy
dyp
+=e
Resultando:
1)/(.
+=
+=
dzx
dzxdxp 1)/(
.+
=+
=dzy
dzydyp
A matriz de projecção M’per:
=
1/100000000100001
'
d
M per
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
20
Cálculo da Projecção ParalelaParalela ortográfica (frontal):
– Plano de Projecção normal ao eixo z;– Direcção de projecção: paralela a z
Um ponto P=(x,y,z) projecta-se em: xp = x, yp = y, zp = 0
A matriz de projecção Mort:
=
1000000000100001
ortM
Projecção lateral:Um ponto P=(x,y,z) projecta-se em: xp = 0, yp = y, zp = z
Projecção topo:Um ponto P=(x,y,z) projecta-se em: xp = x, yp = 0, zp = z
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
21
Cálculo da Projecção com CoP fora do eixo z e plano de projecção perpendicular a z
Podemos definir um ponto P’ no segmento de recta entre CoP e P, de forma paramétrica como:
P’ = CoP + (P-CoP).t 0<= t <= 1
Sendo CoP = (0,0,Zp) + Q(dx,dy,dz), P’=(x’,y’,z’) será:
x’ = Q.dx + (x – Q.dx).ty’ = Q.dy + (y – Q.dy).tz’ = (zp+Q.dz) + (z – (zp + Q.dz)).t
z
x ou y
CoPPp=(xp,yp,zp)
P=(x,y,z)
(0,0,zp)
Q
(dx,dy,dz)
Q: Distância do centro de projecção CoP ao ponto (0,0,zp)
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
22
Cálculo da Projecção com CoP fora do eixo z e plano de projecção perpendicular a z
A projecção Pp do ponto P, na intercepção do segmento de recta entre CoP e P com o plano de projecção, é obtida fazendo z’ = zp e resolvendo em ordem a t:
).().(
dzQzzdzQzz
tp
pp
+−
+−=
Substituindo t nas equações de x’ e y’ obtemos xp e yp:
1.
+−
+−=
dzQzz
dzdxz
dzdxzx
xp
p
p
1.
+−
+−=
dzQzz
dzdyz
dzdyzy
yp
p
p
Fazendo zp = zp:
1.
...
.
1.
1.
2
+−
++−
=+
−
+−
=
dzQzz
dzQdzQzz
dzQz
z
dzQzzdzQzz
zzp
ppp
p
p
pp
=1
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
23
Cálculo da Projecção com CoP fora do eixo z e plano de projecção perpendicular a z
As equações de xp, yp e zp podem ser escritas numa matriz 4x4, Mgeral de modo que do produto da última linha da matriz pelo vector [x y z 1]T resulte o divisor comum W:
+−
+−
−
−
=
1..
100
..00
10
01
2
dzQz
dzQ
zdzQz
dzQz
dzdyz
dzdy
dzdxz
dzdx
M
p
ppp
p
p
geral
=
1
.zyx
M
WZYX
geral
=
WWWZWYWX
zyx
p
p
p
////
.
1
A projecção de P é obtida por:
1.
+−
=dzQzz
W p
Sendo W: Notar que:Q: é um escalar; distância de CoPao ponto (0,0,zp) no plano de projecção.
(dx,dy,dz) vector que representa a direcção entre (0,0,zp) e CoP.
1222 =++ dzdydx
FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO
COMPUTAÇÃO GRÁFICA E INTERFACES/SISTEMAS GRÁFICOS JGB / AAS
24
ResumoA matriz Mgeral representa todas as projecções apresentadas anteriormente, representadas por Mper, M’per e Mort:
zp Q [dx dy dz]Mort 0 ∞ [0 0 -1]Mper d d [0 0 -1]M’per 0 d [0 0 -1]
A projecção Cavaleira e Gabinete pode ser obtida de Mgeral fazendo:
zp Q [dx dy dz]Cavaleira 0 ∞ [cosα sinα -1]Gabinete 0 ∞ [cosα/2 sinα/2 -1]
Todas as projecções estudadas consideram que o plano de projecção é perpendicular ao eixo z. Na projecção perspectiva corresponde a um ponto de fuga.