2.2 Representación matricial de las transformaciones bidimensionales

 Traslación

Sea d = (dx ,dy) el vector de distancias, y T(d) la matriz de traslación, en coordenadas homogéneas la traslación de un punto p en 2D se puede expresar como el producto matricial p' =p*T(d), es decir:


Rotación

Sea r(β) la matriz de rotación sobre el origen, en coordenadas homogéneas la rotación de un punto p alrededor del origen en 2D se puede expresar como el producto matricial p', = p*r(β), es decir:
Rotación de punto pivote
Para aplicar la rotación a un objeto que se encuentra fuera del origen, es necesario que primero el objeto sea trasladado al origen, después se aplica rotación, y se regresa el objeto al punto pivote.


Escalamiento

Sea s = (Sx, Sy) el vector de factores de escalamiento, y SS la matriz de escalamiento, en coordenadas homogéneas los cambios de escala de un punto p en 2D se puede expresar como el producto matricial p'= p*Ss,  es decir:

Escalamiento de punto fijo

Si el origen de coordenadas no se encuentra en el interior del objeto, se produce un desplazamiento. Para evitarlo, se usa un punto fijo y se escala a partir de él.

  1. Se traslada el objeto de modo que el punto fijo coincida con el origen de las coordenadas.
  2. Después se escala el objeto con respecto del origen de las coordenadas.
  3. Se utiliza la traslación inversa del paso 1para regresar el objeto a su posición original.
Donde el punto fijo (xc , yc) podría ser el centro del objeto, uno de sus vértices, o también un punto arbitrario.




Fuentes de consulta:


Comentarios