Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Transformaciones Geometric As 2D Graficacion
Transformaciones Geometric As 2D Graficacion
Traslacin
Las coordenadas (x, y) de un objeto se transforman a (x', y') de acuerdo a las frmulas:
x ' ! x Tx ,
y ' ! y Ty
x (a) (b)
Escalamiento
El escalamiento modifica el tamao de un polgono. Para obtener este efecto, se multiplica cada par coordenado (x, y) por un factor de escala en la direccin x y en la direccin y para obtener el par (x', y'). Las frmulas son
x ! x Sx
y
y ! y Sy
y
x (a) (b)
x ' ! x F x x F
S x , y ' ! y F y y F
S y
Reacomodando
y y
x' ! x S x 1 S x
x F y' ! y S y 1 S y
y F
(a)
(x
,y
x (b)
Rotacin
La rotacin gira los puntos de una figura alrededor de un punto fijo. De la figura se obtiene
x ' ! r cosJ U
! r cos J cos U r sen J sen U y ' ! r senJ U
! r sen J cos U r cos J sen U
y (x', y')
Simplificando
r U r J x (x, y)
x (x
R
,y
Coordenadas homogneas
Para poder representar las tres transformaciones en forma matricial como producto de matrices, es necesario representar los puntos en coordenadas homogneas. Estas coordenadas agregan una tercer componente a las coordenadas bidimensionales. De tal forma que, un punto (x, y) pasa a ser (x, y, W). El punto en coordenadas Cartesianas representado por esta trada es el (x/W, y/W). El valor de W es generalmente 1.
?x'
y' 1 ! x
A ?
T Tx , Ty
P' ! P T Tx , Ty
?x'
y ' 1A! ?x
S Sx , S y
P' ! P S S x , S y
?x'
y ' 1A! ?x
P' ! P RU
Composicin de transformaciones
Para aplicar varias transformaciones a un conjunto de puntos basta con combinar las matrices de transformacin en una sola, mediante multiplicacin matricial. En caso de tener solo transformaciones del mismo tipo, la combinacin sigue reglas muy simples. Traslacin:
Escalamiento:
S S x1 , S y1 S S x 2 , S y 2 ! S S x1 S x 2 , S y1 S x 2
Rotacin:
R U1 R U2 ! R U1 U2
Sx ! 0 1 S x x F
1 S
y
y
(x
,y
(x
,y
Forma general
En general una transformacin que utilice traslaciones, escalamientos y rotaciones tendr la forma:
?x'
y ' 1A! ?x
a y 1A b c
d e f
0 0 1
Por tanto, el clculo de las coordenadas transformadas se podr hacer con las siguientes ecuaciones
x' ! ax by c y ' ! dx ey f
Otras transformaciones
Otras transformaciones que permiten llevar a cabo operaciones muy tiles, estas son: Reflexiones Corte.
Reflexiones en x y y
Las reflexiones respecto al eje x y y se obtienen con las matrices siguientes: 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1
osicin original
osicin re le ada
Corte en x
El corte produce una deformacin similar al deslizamiento de una capa sobre otra. El corte en x se produce por la matriz:
1 SH x 0
y
0 0 1 0 0 1
y (2,1) (3,1)
(0,1)
(1,1)
(0,0)
(1,0) (a)
(0,0)
(1,0) (b)
Corte en y
El corte en y se produce por la matriz
1 SH y 1 0 0 0 0 0 1
(1,3) y y (1,2) ( 0 ,1 ) ( 1 ,1 ) ( 0 ,1 )
( 0 ,0 )
( 1 ,0 ) (a)
( 0 ,0 ) (b)
Puerto de visin 2
Transformaciones de visin
(xmax, ymax)
(xmin, ymin) Ventana en coordenadas mundiales Ventana trasladada al origen (umax, vmax)
(umin, vmin) Ventana escalada al tamao del rea de visin. Traslacin hasta la posicin final.
umax u min vmax vmin ! T xmin , ymin
S x x , y y min max min max
umax umin x x min 0 max 0 0 1 0 0 vmax vmin y max ymin 0
T umin , vmin
1 ! 0 xmin
0 1 ymin
0 1 0 0 1 umin
0 1 vmin
0 0 1
MW
ymin
0 0 1
Ejemplo
Las transformaciones complejas deben ser descritas como composicin de una ms simples. Suponga que queremos derivar una transformacin que rote un punto en el sentido de las manecillas del reloj, un ngulo con respecto al punto (Rx, Ry). Primero debemos trasladar el punto para que (Rx, Ry) se convierta en el origen, esto es:
0 0 1 0 Ry 1
0 0 1
Finalmente, trasladamos el punto para que el origen sea trasladado (Rx, Ry). [x, y , 1] = [x, y , 1] 1 0 Rx 0 1 Ry 0 0 1
Esto se podra haber realizado mediante una composicin de transformaciones. [x, y , 1] = = [ x, y , 1] 1 0 -Rx cos -sen sen cos 0 0 0 0 1 1 0 Rx 0 1 Ry 0 0 1
0 0 1 0 Ry 1
Si los valores de Rx, Ry y se conocen, las tres matrices se pueden multiplicar para obtener una sola matriz de transformacin. Ejercicio: Obtener la matriz de transformacin final.