Una vez que se tienen las funciones
para el trazado de figuras básicas, surge la necesidad de realizar alteraciones
o manipulaciones de las mismas; como reducir o aumentar el tamaño, manipular despliegues,
girar, entre otros. Estas diversas manipulaciones se llevan a cabo aplicando
transformaciones geométricas
Traslación
Una traslación es el movimiento en
línea recta de un objeto de una posición a otra. Se traslada un punto de la
posición coordenada (x, y) a una nueva posición (x', y') agregando distancias
de traslación, Tx y Ty, a las coordenadas originales:
x' = x + Tx, y' = y + Ty
Escalación
Una transformación para alterar el
tamaño de un objeto se denomina escalación. Esta operación puede efectuarse con
polígonos multiplicando los valores coordenados (x, y) de cada vértice de
frontera por los factores de escalación Sx y Sy para producir las coordenadas
transformadas (x', y').
x' = (x)(Sx)
y' = (y)(Sy)
El factor de escalación Sx hace
objetos a escala en la dirección x, mientras que Sy lo hace en la dirección y.
Rotación
La transformación de puntos de un
objeto situados en trayectorias circulares se llama rotación. Este tipo de
transformación se especifica con un ángulo de rotación, el cual determina la
cantidad de rotación de cada vértice de un polígono.
Se pueden hacer que los objetos giren
alrededor de un punto arbitrario o el punto pivote de la transformación de
rotación puede colocarse en cualquier parte en el interior o fuera de la
frontera exterior de un objeto, el efecto de la rotación consiste en oscilar el
objeto con respecto a este punto interno. Con un punto pivote externo, todos
los puntos del objeto se despliegan en trayectorias circulares alrededor del
pivote.
Representación matricial de las transformaciones bidimensionales
- Coordenadas
homogéneas y representación matricial
El uso de coordenadas homogéneas permite tratar todas las transformaciones
geométricas como una multiplicación de matrices.
Las coordenadas agregan un tercer componente a las coordenadas bidimensionales.
De tal forma que, un punto (x,y) pasa a ser (x,y,W). El valor de W es
generalmente 1.
- Representación matricial.
En el área de la graficación por computadora, es común encontrar la
representación de las ecuaciones de transformación por medio de matrices, y se
pueden encontrar dos tipos de notaciones para representarlas:
1.- Repesentando las coordenadas de un punto p como vectores renglón, en este caso una matriz de transformación M en 2 dimensiones, multiplica al
punto por la derecha para obtener el nuevo punto p'.
p= [x1 x2], p'=[x1 x2]= p*M
2.- Representando las coordenadas de un punto p como vectores
columna, en este caso una matriz de transformación M, multiplica al
punto por la izquierda para obtener el nuevo punto p'.
x1 x1'
p=[ x2 ], p'=[ x2' ] =M*p
Muchas aplicaciones incluyen secuencias de transformaciones geométricas:
– Una animación requiere que los objetos se trasladen y roten en cada fotograma
– Un diseño CAD requiere muchas transformaciones hasta obtener el resultado
final
• Debemos formular de forma muy eficiente toda la secuencia de
transformaciones, cada transformación puede representarse como P’ = P M1+ M2
La matriz M1 contiene la información de ángulos y factores de escala
La matriz M2 contiene los términos de traslación asociados al punto fijo
y al centro de rotación
Para producir una secuencia de transformaciones hay que calcular las nuevas
coordenadas en cada transformación!
P’’ = P’ M3+ M4= … = P M1M3+ M2 M3+ M4
- Coordenadas
homogéneas
El uso de coordenadas homogéneas permite tratar todas las transformaciones
geométricas como una multiplicación de matrices pues no todas las
transformaciones son aplicadas a un punto como una multiplicación de factores.