domingo, 7 de diciembre de 2014

Rotar y Escalar un Punto usando Matrices


En esta oportunidad, veremos el uso de matrices para Rotar y Escalar un punto. Para ello, antes revisamos algo de Multiplicación de Matrices que lo podemos ver en este enlace:


Uso de las Matrices en la Rotación y Escala de un Punto:

Para Rotar y Escalar (entre otras operaciones) un Punto dado, usamos estas ecuaciones:

 


 
 Podemos transformar estas ecuaciones en una forma matricial:



 

 
 
 
Donde tenemos una matriz 3 x 3 donde están los coeficientes de Cálculo, una matriz columna (3 x 1) con las coordenadas iniciales y el resultado será una matriz columna (3 x 1).

Tendremos en esta ocasión dos metodologías de trabajo:

Operando matrices de forma separada:

Se trabajara con la Matriz-Rotación ([R]), Matriz-Escala ([E]) y la Matriz 0:


 
 
 
 
 
 
 
 
 
 
 
 
 
 Ejemplo de Cálculo:

Tenemos la Coordenada 0 (0,0) y la Coordenada Inicial (190.048,130.41), luego a la Coordenada Inicial la Rotamos con un Ángulo de 80º en sentido anti horario (tendrá un signo positivo) y luego lo escalamos 6 veces.










Cálculo:

 
 
 
 
 
 
 
 
 
 Nota: Para el cálculo se transformó los 80º en radianes.

Gráficamente:


















También se demuestra que el resultado es el mismo si invertimos el orden de las matrices:
Cálculo:


 
 
 
 
 
 
 
 
 

Gráficamente:


 
 
 
 
 
 
 
 
 
 
 Operando matrices de forma conjunta:

Es posible trabajar la Matriz-Rotación ([R]), Matriz-Escala ([E]) y la Matriz 0 de forma conjunta:


 



Obteniendo el mismo resultado:

 

 
 
 
 
 
 
 
 

Y de igual manera se verifica si se invierte las matrices Rotación y Escala:


 
 
 
 
 
 
 
 
 
Si bien la Coordenada 0, para este ejemplo tiene valores 0,0, puede tener otros valores, según nuestros requerimientos.

Esperando que les sea útil, será hasta el otro mes.               
ª