Dado un punto P(x,y) lo trasladaremos posiciones eje x posiciones eje y
Esto supone que el punto final ser P(x,y) donde x = x + e y= y +
Usaremos notacin vectorial :
P = P = T =
P = P + T
(4,4) (7,4) (7,1) (10,1)
3.1 ESCALADO
Tendremos dos factores s x y s y para cada eje siendo el factor en el que va a cambiar la figura en cada eje. Las posiciones cambiarn de la siguiente forma:
x = x s x
y = y s y
Vectorialmente :
= P = SP
Cuando escalamos estamos tambin variando su posicin con respecto al origen de coordenadas.
Escalado diferencial Es aquel en el que los factores son distintos s x s y
Escalado uniforme si s x = s y
(4,4) (7,4) (2, ) ( , )
3.2 ROTACIN
Se rota y se desplaza con respecto al origen. Haremos :
x = x cos - y sen y = y cos + x sen
De forma vectorial :
= P = RP
Si los angulos son positivos el giro es en sentido contrario a las agujas del reloj. Si los angulos son negarivos el giro es en sentido de las agujas del reloj.
NOTA : cos (- ) = cos sen (- ) = -sen
(49,78)
(21,49)
(5,2) (9,2)
COORDENADAS HOMOGNEAS
(x,y) (x,y,w)
(x,y,w) y (x,y.w) representan el mismo punto si los valores son mltiplos.
Ejemplo :
(1,1,2) representa el mismo valor que (2,2,4)
Si w 0 podemos representar el punto (x,y,w) como ( ,1).Siendo las coordenadas cartesianas.
Por tanto, para un punto vamos a utilizar en lugar de
+ Traslacin
De esta forma pasamos de sumar a multiplicar.
P = T P
En el caso de comprobar varias traslaciones :
P T ( ) P P = T ( ) P P T ( ) P P = T ( ) P
P = T ( ) P
+ Escalado
P = S P
La combinacin de dos operaciones de escalado nos dar como resultado :
+ Rotacin
P = R P
La combinacin de rotaciones ser sumando los ngulos : Dada la matriz de transformacin M :
rotacin traslacin
El resultado nos mantiene ngulos y longitudes de lnea. En cambio si aplicamos una combinacin de rotaciones, traslaciones y escalados, slo podemos asegurar que se mantendrn las lneas paralelas.
R + T + S Lneas paralelas.
COMPOSICIN DE OPERADORES
Para que al rotar o escalar al cuadrado rotase escalase en el sitio, lo haremos componiendo operadores, si ya est en el origen, no hay problema, ya se rota bien, sino, lo haremos de la forma siguiente :
Se traslada al origen del eje de coordenadas. Se le aplica el escalado rotacin. Se traslada al punto original
P 1 P 1
Casa original Despus de la Despus de la Despus de la traslacin al origen rotacin traslacin a P 1
Matricialmente la operacin de escalado sera :
T(x 1 ,y 1 ) S(s x ,s y ) T(-x 1 ,-y 1 ) = = M
De forma que al aplicar la matriz M a la figura la estamos escalando en el sitio. En caso de rotacin :
T(x 1 ,y 1 ) R( ) T(-x 1 ,-y 1 ) = = M
Lo normal es tener unas cuantas combinaciones tpicas (que se usan habitualmente) ya precalculadas.
EFICIENCIA
La matriz M = multiplicada por un vector nos lleva a realizar 9 multiplicaciones y 6 sumas. Las operaciones realizadas darn problemas de eficiencia, pero la ltima fila permanece constante. Sabemos que:
x = x r 11 + y r 12 + t x 4 productos Se reduce el nmero y = x r 21 + y r 22 + t y 4 sumas de operaciones
Por ello deberamos utilizar esta segunda opcin y no multiplicar las matrices completas.
En una rotacin :
x = x cos - y sen y = x sen - y cos
en muchas aplicaciones va a ser muy pequeo con lo que es seno es casi 1 y el coseno casi 0 por lo que redondeamos quedando :
x = - y sen y = x sen
No se debe abusar de estos redondeos, ya que el error de redondeo se va acumulando.