Académique Documents
Professionnel Documents
Culture Documents
Graficación por
Computadora
Clase 1
FCC-BUAP Otoño 2010
Rafael Lemuz López
Geometría 2D
Recordatorio básico:
Elangulo al rededor de un circulo es 360 o 2π
radianes
Cuando dos lineas se cruzan:
Angulos opuestos son equivalentes
Angulos sobre la linea suman180
Triangulos similares:
Todos los angulos correspondientes son equivalentes
Pares de lados correspondientes tienen la misma razón de
longitud y estan separados por ángulos equivalentes
Cada para de lados correspondientes tienen la misma razón
de longitud
Trigonometría
Monsters, Inc
Manipulación de la geometría y el color…
Manipulación de la geometría y el color…
Manipulación de la geometría y el color…
Manipulación de la geometría y el color…
¿Por qué?
Enfoque Geométrico:
Si observaramos desde la dirección de una de las
lineas, esa linea se reduce a un punto
Asi, todo lo que necesitamos es calcular la distancia
entre un punto y una linea en 2D (el plano de
proyección)
Proyectando, reducimos el problema de 3D a 2D
Ejemplo: Distancia entre 2 lineas en 3D
Enfoque Geométrico:
¡Podemos continuar reduciendo la dimensionalidad!
Proyectar el punto en rojo y la linea azul en el plano
perpedicular a la linea en azul
Ahora podemos obtener la distantcia punto a punto
Ejemplo: Distancia entre 2 lineas en 3D
Alternativa:
(Casi) saltarse el paso de la intuición geométrica…
Representar lineas matemáticamente
Sabemos que la distancia se obtiene en el segmento
que es perpendicular a ambas lineas
Escribir la ecuación para ese segmento y resolver
(p1 p 2 ), u s || u ||2 t v, u 0
(p1 p 2 ), v s u, v t || v ||2 0
Conclusión:
Revisar el algebra…
Espacio Vectorial
u
x x
Espacio Vectorial: Vectores Base
x
Notar que un vector v tendra diferentes coordenadas
para diferentes bases
Definiciones básicas
Points Vectors
Punto + vector = punto
vector + vector = vector
A
punto+ punto: not definido!!
Mapeo de puntos a vectores (Espacio Afin)
p
p p p O
v O+v
O
Producto Punto
v, w || v || || w || cosθ
L
w cos θ
||w||
v, w
L
v || v ||
L
Proyección de w en v
Producto punto en coordenadas (2D)
v ( xv , yv )
y
w ( xw , yw )
yw v, w xv xw yv yw
w
yv
v
O xw xv x
Vectores Perpediculares
v, w 0
Unicamente en 2D : v ( xv , yv ) v ( yv , xv )
v
Distancia entre dos puntos
y dist ( A, B) || B A ||
A B A, B A
yA
( xB x A ) 2 ( yB y A )2
yB B
O xA xB x
Ecuación paramétrica de una linea
(t ) p 0 t v, t ( , )
v
p0
Ecuación paramétrica de un rayo
v
p0
q
Encontrar un punto q’ tal que (q q’) v
dist(q, l) = || q q’ || l
q q, v 0
v
q (p 0 tv ), v 0 q’ = p0 +tv
q p0 , v t v, v 0 p0
q p0 , v q p0 , v
t
v, v || v ||2
2
q p0 , v
dist 2 (q, l ) || q q ||2 || q p 0 ||2
|| v ||2
Interpretación geométrica facil
q
Pitágoras
Pythagoras : l
v
q’
2 2 2
(1) L dist(q, q ) || q p0 ||
q p0 , v p0
(2) L L
|| v ||
dist(q, q ) 2 || q p0 ||2 L2
2
q p0 , v
|| q p0 ||2 .
|| v ||2
La distancia mínima entre un punto y una línea –
también aplica en 3D!
Ax By C 0, A, B, C R, ( A, B) (0,0)
y
Ax+By+C > 0
Ax+By+C < 0
x
Intersección Linea-segmento
Q2 (x2, y2)
Ax+By+C < 0
x
Producto Cruz
q
p0
Distancia entre un punto y un plano
q n
q’ p0
Distancia entre punto y plano
(q q) || n q
q n, R q q n
q p0 , n 0 ((because
porque q’
q isesta enplane
in the el plano
) π)
q n p0 , n 0
q p0 , n n, n 0
p 0 q, n
|| n ||2
2
2 2 2 2 q p0 , n
dist (q, ) || q q || || n || .
|| n ||2
q n
q’ p0
Distancia entre punto y plano
Camino Geométrico:
Proyectar (q - p0) sobre n
| q p0 , n |
dist
n
q n
p0
Representación implicita del plano en 3D
Ax By Cz D 0, A, B, C, D R, ( A, B, C ) (0,0,0)
Ax+By+Cz+D > 0
Ax+By+Cz+D = 0
Ax+By+Cz+D < 0
Distancia entre dos lineas en 3D
l1 q1
l1 ( s) p1 su p1
u
l2 (t ) p 2 tv d
p2
v
l2 q2
l1 q1
l1 ( s) p1 su p1
u
l2 (t ) p 2 tv d
p2
v
l2 q2
l1 q1
l1 ( s) p1 su p1
u
l2 (t ) p 2 tv d
p2
v
l2 q2
u, v v , p1 p 2 || v ||2 u, p1 p 2
s
|| u ||2 || v ||2 u, v 2
|| u ||2 u, p1 p 2 u, v u, p 1 p 2
t
|| u ||2 || v ||2 u, v 2
Distancia entre dos líneas en 3D
l1 q1
l1 ( s) p1 su p1
u
l2 (t ) p 2 tv d
p2
v
l2 q2
~ ~
dist (l1 , l2 ) || l1 ( s ) l2 ( t ) ||
Matrices
Rotación
Rotar
y
(0,1)
x
(1,0)
Rotar por : 1er Cuadrante
y cos ,sin
sin
(1,0) x
cos
Rotar por : 1er Cuadrante
(0,1)
x
(1,0)
Rotar por : 2o Cuadrante
y
(0,1)
cos
x
sin
Rotar por : 2o Cuadrante
1 cos
0 sin
0 sin
1 cos
Utilizando notación matricial
y
6
1 6
0
1 2 3 4 5 6 7 8 9 10
x
Transformaciones Compuestas
Ts T ( a , b ) R (t ) T ( a, b)
1
sx 0 1
sx 0
Scale( sx , s y ) S 1
0 sy 0 sy
sx 0 0 x sx x
0 sy 0 y sy y y
6
0 0 sz z sz z 5
3 6 9
3 3
2
1 2 3
1 1
0
1 2 3 4 5 6 7 8 9 10
x
Nota: Si no esta anclada al origen la
figura se desplaza y crece
Shear
1 a 1 1 a
Shear S
0 1 0 1
(1, 0) (1, 0)
Invertir Transformaciones Compuestas
Suponer que se quiere revertir el efecto de 3
transformaciones compuestas
Opción 1: Calcular la matríz compuesta, invertir
Opción 2: Invertir cada transformación e invertir
el orden
Resulta de las propiedades de las matrices
M M 1M 2 M 3
1 1 1 1
M M 3 M 2 M1
1 1 1 1
M M M 3 (M 2 (M1 M1 )M 2 )M 3
Translación!
Coordenadas Homogéneas
Un punto (x, y) puede re-escribirse en coordenadas
homogéneas como:
(xh , yh , h)
El parámetro homogéneo h es un valor diferente de
cero, tal que:
xh yh
x y
h h
Cualquier punto (x, y) se puede describir como: (hx, hy, h)
Convenientemente se elige h = 1 de tal forma que:
(x, y) se represente como (x, y, 1)
¿Porque coordenadas Homogéneas?
1 0 dx
0 1 dy
0 0 1
Representando los puntos con un vector columna la
translación de un objeto se expresa como:
1 0 dx x 1x 0 y 1dx x dx
0 1 dy y 0 x 1y 1dy y dy
0 0 1 1 0x 0 y 1 1
Transformaciones en Coordenadas Homogeneas
1 0 dx x x dx
traslación:
0 1 dy y y dy : v' T (dx, dy)v
0 0 1 1 1
sx 0 0 x sxx
escala: 0 sy 0 y syy : v' S ( sx, sy )v
0 0 1 1 1
Transformaciones en Coordenadas Homogéneas
Rotación:
cos sin 0 x x cos y sin
sin cos 0 y x sin yos : v ' R ( )v
0 0 1 1 1
Inversa de las Transformaciones
Las tranformaciones se pueden revertir facilmente
utilizando la inversa de las matrices T.
1 0 dx
1 1
T 0 1 dy 0 0
sx
0 0 1
1 1
S 0 0
cos sin 0 sy
R 1
sin cos 0 0 0 1
0 0 1
Transformaciones 3D:
Rotación