ia841 – modelagem de sólidos€¦ · ia841 – 1s2015 - ting espaço afim w⃗ =αu⃗u+αv⃗v...
TRANSCRIPT
IA841 – Modelagem de Sólidos
Espaços Geométricos
Farin: Capítulo 2
Espaço Euclidiano
http://www.rab3d.com/tut_blen_started.php
5
10
5
http://www.mathsisfun.com/algebra/vectors-dot-product.html
IA841 – 1s2015 - Ting
Regra de mão-direita
Sistema de Referência
Transformações Euclidianas
• As distâncias e os ângulos são preservados.– Translações– Rotações– Reflexões– Plano de deslizamento (glide): reflexão
seguida por uma translação
• ↔ Transformações rígidas
IA841 – 1s2015 - Ting
Representação dos Pontosn valores escalares no espaço Rn
Coordenadas cartesianasCoordenadas polaresCoordenadas cilíndricasCoordenadas esféricas
y
Cartesianas
x
R
Polares
θ
Esféricas
Valores escalares podem ser medidas lineares ou angulares
IA841 – 1s2015 - Ting
v
Vetores
Q3=(x,y)
“Diferença” entre 2 pontosv = Qi – Pi
Magnitude (|v|)Orientação (sentido e direção)
P2
Q2
Q4
Q1
P4
P1
P3
IA841 – 1s2015 - Ting
As coordenadas dos pontos variam com a escolha do referencial?
É conveniente para modelagem geométrica?
IA841 – 1s2015 - Ting
Espaço Afim
w⃗ =αu u⃗+αv v⃗
Base: ( v⃗1 , v⃗ 2 ,… , v⃗n )
P−0=∑i=1
n
γi v⃗ i
P= 0+∑i=1
n
γi v⃗ i
Combinação Linear :
Pontos como a origem O deslocada
coordenadas afins
Se vi forem versores e O a origem, então as
coordenadas afins coincidem com as coordenadas cartesianas.
IA841 – 1s2015 - Ting
ExemploBase em coordenadas cartesianas:
O⃗A=(X 1
Y 1 ) ,O⃗B=(X 2
Y 2)
Pontos em coordenadas afins:
O= (0,0 ) ,A= (1,0 ) ,B= (0,1 )
P'= ( p,0 ) ,Q'= (0,q )
P= ( x1, y1 ) ,Q= ( x2, y2 )
Para qualquer ponto sobre P'Q' :
x (X 1
Y 1 )+y(X 2
Y 2)=tP'+ (1− t ) Q'=tp (X 1
Y 1)+ (1−t ) q (X 2
Y 2)
xp+
yq=
tpp
+(1−t )q
q=t+1−t=1
IA841 – 1s2015 - Ting
Área em coord. afinsx1p
+y1q
=1→x1p
=1−y1q
→1p=
(1− y1q )
x1
x2p
+y2q
=1→x2p
=1−y2q
→1p=
(1− y2q )
x2
(1− y1q )
x1=
(1− y2q )
x2→q=
x1 y2−x 2 y1x1− x2
PQP'Q'
=x1− x2
p
OP'OA
=p1
=pOQ'OB
=q1=q=
x1 y2−x 2 y1x1−x2
IA841 – 1s2015 - Ting
Área em coord. afins● Cevianas: Razão entre as áreas é igual a razão dos segmentos do lado oposto.
OPQOP'Q'
=PQP'Q'
,OP'Q'OAQ'
=OP'OA
,OAQ'OAB
=OQ'OB
OPQOAB
=PQP'Q'
OP'OA
OQ'OB
Assim
x1− x2p
px1 y2−x 2 y1
x1−x2
x1 y2− x2 y1=( x1 y1x 2 y 2 )
IA841 – 1s2015 - Ting
Área de um triângulo qualquer
P''= ( x1−x3, y1− y3 )Q''= ( x2−x3, y 2− y3)
Pontos em coordenadas afins:
P= ( x1, y1) ;Q= ( x2, y 2) ;R= ( x3, y3 )
RPQOAB
=RP''Q''OAB
=( x1− x3 y1− y3x2− x3 y2− y3 )=(
x1 y1 1
x2 y2 1x3 y3 1 )
Se a base é definida pelos versores, OAB = ½!
IA841 – 1s2015 - Ting
Combinação Baricêntrica
http://www.flipcode.com/archives/3D_Geometry_Primer_Chapter_1-Issue_09_Barycentric_Combinations.shtml
Q−O=∑i=0
n−1
αi ( P i−O )=∑i= 0
n−1
αi P i−∑i=0
n−1
αiO=∑i=0
n−1
αi P i−O
Q=O+∑i=0
n−1
αi ( P i−O )
Q=∑i=0
n−1
αi P i
∑i= 0
n−1
αi=1
Coordenadas baricêntricas
IA841 – 1s2015 - Ting
Triângulo como referência
Q
1=ABCABC
=( PBC+APC+ABP )
ABC=
PBCABC
+APCABC
+ABPABC
=aA+aB+aC
Coordenadas baricêntricas ↔ Coordenadas ariais
CQQA
=QBCQAB
=PCQPQA
→QBCPQA=PCQQAB
QBCPQA−PCQPQA=PCQQAB−PCQPQAPQA (QBC−PCQ )=PCQ (QAB−PQA )
PCQPQA
=QBC−PCQQAB−PQA
=PBCPAB
=aAaC
IA841 – 1s2015 - Ting
Coordenadas Homogêneas
P=t1 A2+t 2 B2+t 3C 2
P=t1 ( Ai )+t2 (B i )+t 3 (C i )
P=t1 ( μA2 )+t 2 ( μB2 )+t3 ( μC 2 )
P= ( μt1 ) A2+( μt2 ) B2+ ( μt3)C 2
(t1 ,t2 ,t3 )= ( μt1 ,μt2 ,μt3) μ≠0
Forma normalizada é a mais utilizada: t1+t2+t3=1
IA841 – 1s2015 - Ting
Baricêntricas → Cartesianas
(xyz )=(
x1 x2 x3y1 y2 y 3z1 z 2 z 3
)(t 1t 2t 3
)
Coordenadas baricêntricas
Coordenadascartesianas
Pontos de referência em coordenadas cartesianas/afins
IA841 – 1s2015 - Ting
Cartesianas → Baricêntricas
(xyz )=(
x1 x2 x3y1 y2 y 3z1 z 2 z 3
)(α1α 2
1−α1−α2)
x=α1 x1+α2 x2+(1−α1−α2) x3=α1(x1−x3)+α2( x2−x3)+ x3y=α1 y1+α2 y2+(1−α1−α2) y3=α1( y1− y3)+α2( y2− y3)+ y3z=α1 z1+α2 z2+(1−α1−α2) z3=α1( z1− z3)+α2( z2−z3)+ z3
(xyz )=(
x1−x3 x2−x 3 x 3y1− y3 y2− y3 y3z1−z 3 z 2−z 3 z3
)(α1α21
) (α1α21)=M−1(
xyz )
IA841 – 1s2015 - Ting
Baricêntricas → Afins
P
Baricêntricas Afins
P (t1,t2,t3) (x,y)
A (0,0,1) (0,0)
B (1,0,0) (1,0)
C (0,1,0) (0,1)
t1=PCAABC
=∣x y0 1∣=x
t 2=PABABC
=∣1 0x y∣= y
t3=1−t1−t 2=1−x− y
IA841 – 1s2015 - Ting
Representação de Vetores
Q1=∑i=0
n−1
αi P i ,∑i= 0
n−1
αi=1
Q2=∑i= 0
n−1
β i P i ,∑i= 0
n−1
β i=1
Q⃗=Q2−Q1=∑i= 0
n−1
αi P i−∑i=0
n−1
β i P i
IA841 – 1s2015 - Ting
Pontos e Vetores
http://www.idav.ucdavis.edu/education/GraphicsNotes/Affine-Space-Axioms/Affine-Space-Axioms.html
IA841 – 1s2015 - Ting
Transformações Afins• A razão entre as distâncias é preservada, ou
seja, as coordenadas baricêntricas são preservadas.
– Translação
– Transformações lineares• Rotação• Mudança de escala• Cisalhamento• Reflexão
• Preserva o paralelismo
IA841 – 1s2015 - Ting
Transformações AfinsNotação Matricial
Transformação Linear Translação
Coordenadas Homogêneas = pontos Rn representados por (n+1) escalares
IA841 – 1s2015 - Ting
Como modelar tais efeitos visuais?
IA841 – 1s2015 - Ting
Coordenadas Baricêntricas/Afins
Coordenadas Projetivas
Coordenadas Homogêneas
Espaço Projetivo
Reta no infinito
Generalização
IA841 – 1s2015 - Ting
Espaço Projetivo + Usado
Ponto(x/w,y/w,z/w,1), ou seja, projeção de (x,y,z,w), sobre o plano w=1 com centro de projeção na origem.
Vetor“diferença” de 2 pontos homogeneizados Quarta coordenada(w) é nula lim (x/w,y/w,z/w,w/w) = (∞,∞,∞,1)W0
na direção (x,y,z)
(x,y,z,w)
Plano afim
IA841 – 1s2015 - Ting
Razão Cruzada
cr ( A,B,C,D )=razão (A,B,D )
razão (A,C,D )
Orazão(A , B , D)=OABOBD
=ABBD
razão(A ,C , D)=OACOCD
=ACCD
cr (A , B ,C , D)=cr (A' , B ' ,C ' , D ' )→ABAC
CDBD
=A' B 'A ' C '
C ' D 'B ' D '
IA841 – 1s2015 - Ting
Transformações ProjetivasNotação Matricial
● Razão cruzada é preservada
Transformação Linear Translação
Projetiva
IA841 – 1s2015 - Ting
Transformações
http://homepages.inf.ed.ac.uk/rbf/HIPR2/affine.htm