En este tema, exploraremos tres transformaciones fundamentales en el espacio 3D: rotaciones, traslaciones y escalados. Estas transformaciones son esenciales para manipular objetos en gráficos por computadora y en diversas aplicaciones de geometría computacional.

  1. Rotaciones

Definición

Una rotación en el espacio 3D es una transformación que gira un objeto alrededor de un eje fijo. Las rotaciones pueden ser representadas mediante matrices de rotación.

Matrices de Rotación

Las matrices de rotación en 3D son matrices ortogonales que preservan la longitud de los vectores y los ángulos entre ellos. Las rotaciones más comunes son alrededor de los ejes coordenados (x, y, z).

Rotación alrededor del eje X

\[ R_x(\theta) = \begin{bmatrix} 1 & 0 & 0
0 & \cos(\theta) & -\sin(\theta)
0 & \sin(\theta) & \cos(\theta) \end{bmatrix} \]

Rotación alrededor del eje Y

\[ R_y(\theta) = \begin{bmatrix} \cos(\theta) & 0 & \sin(\theta)
0 & 1 & 0
-\sin(\theta) & 0 & \cos(\theta) \end{bmatrix} \]

Rotación alrededor del eje Z

\[ R_z(\theta) = \begin{bmatrix} \cos(\theta) & -\sin(\theta) & 0
\sin(\theta) & \cos(\theta) & 0
0 & 0 & 1 \end{bmatrix} \]

Ejemplo Práctico

Supongamos que queremos rotar un punto \( P = (1, 0, 0) \) 90 grados alrededor del eje Z.

\[ \theta = 90^\circ = \frac{\pi}{2} \]

\[ R_z\left(\frac{\pi}{2}\right) = \begin{bmatrix} 0 & -1 & 0
1 & 0 & 0
0 & 0 & 1 \end{bmatrix} \]

\[ P' = R_z\left(\frac{\pi}{2}\right) \cdot P = \begin{bmatrix} 0 & -1 & 0
1 & 0 & 0
0 & 0 & 1 \end{bmatrix} \cdot \begin{bmatrix} 1
0
0 \end{bmatrix} = \begin{bmatrix} 0
1
0 \end{bmatrix} \]

El punto \( P \) después de la rotación es \( P' = (0, 1, 0) \).

  1. Traslaciones

Definición

Una traslación en el espacio 3D es una transformación que desplaza un objeto en una dirección específica por una distancia determinada. Las traslaciones se representan mediante vectores de traslación.

Matrices de Traslación

Las traslaciones se pueden representar usando matrices de transformación homogénea. Para un vector de traslación \( T = (t_x, t_y, t_z) \), la matriz de traslación es:

\[ T = \begin{bmatrix} 1 & 0 & 0 & t_x
0 & 1 & 0 & t_y
0 & 0 & 1 & t_z
0 & 0 & 0 & 1 \end{bmatrix} \]

Ejemplo Práctico

Supongamos que queremos trasladar un punto \( P = (1, 2, 3) \) por un vector \( T = (4, -2, 1) \).

\[ P' = P + T = (1 + 4, 2 - 2, 3 + 1) = (5, 0, 4) \]

El punto \( P \) después de la traslación es \( P' = (5, 0, 4) \).

  1. Escalados

Definición

Un escalado en el espacio 3D es una transformación que cambia el tamaño de un objeto. Los escalados pueden ser uniformes (igual en todas las direcciones) o no uniformes (diferente en cada dirección).

Matrices de Escalado

Para un vector de escalado \( S = (s_x, s_y, s_z) \), la matriz de escalado es:

\[ S = \begin{bmatrix} s_x & 0 & 0 & 0
0 & s_y & 0 & 0
0 & 0 & s_z & 0
0 & 0 & 0 & 1 \end{bmatrix} \]

Ejemplo Práctico

Supongamos que queremos escalar un punto \( P = (1, 2, 3) \) por un factor de \( S = (2, 0.5, 3) \).

\[ P' = S \cdot P = (1 \cdot 2, 2 \cdot 0.5, 3 \cdot 3) = (2, 1, 9) \]

El punto \( P \) después del escalado es \( P' = (2, 1, 9) \).

Ejercicios Prácticos

Ejercicio 1: Rotación

Rota el punto \( P = (1, 1, 1) \) 45 grados alrededor del eje Y.

Ejercicio 2: Traslación

Traslada el punto \( P = (2, 3, 4) \) por el vector \( T = (-1, 2, 3) \).

Ejercicio 3: Escalado

Escala el punto \( P = (1, 2, 3) \) por un factor de \( S = (3, 3, 3) \).

Soluciones

Solución Ejercicio 1

\[ \theta = 45^\circ = \frac{\pi}{4} \]

\[ R_y\left(\frac{\pi}{4}\right) = \begin{bmatrix} \cos\left(\frac{\pi}{4}\right) & 0 & \sin\left(\frac{\pi}{4}\right)
0 & 1 & 0
-\sin\left(\frac{\pi}{4}\right) & 0 & \cos\left(\frac{\pi}{4}\right) \end{bmatrix} = \begin{bmatrix} \frac{\sqrt{2}}{2} & 0 & \frac{\sqrt{2}}{2}
0 & 1 & 0
-\frac{\sqrt{2}}{2} & 0 & \frac{\sqrt{2}}{2} \end{bmatrix} \]

\[ P' = R_y\left(\frac{\pi}{4}\right) \cdot P = \begin{bmatrix} \frac{\sqrt{2}}{2} & 0 & \frac{\sqrt{2}}{2}
0 & 1 & 0
-\frac{\sqrt{2}}{2} & 0 & \frac{\sqrt{2}}{2} \end{bmatrix} \cdot \begin{bmatrix} 1
1
1 \end{bmatrix} = \begin{bmatrix} \frac{\sqrt{2}}{2} + \frac{\sqrt{2}}{2}
1
-\frac{\sqrt{2}}{2} + \frac{\sqrt{2}}{2} \end{bmatrix} = \begin{bmatrix} \sqrt{2}
1
0 \end{bmatrix} \]

El punto \( P \) después de la rotación es \( P' = (\sqrt{2}, 1, 0) \).

Solución Ejercicio 2

\[ P' = P + T = (2 - 1, 3 + 2, 4 + 3) = (1, 5, 7) \]

El punto \( P \) después de la traslación es \( P' = (1, 5, 7) \).

Solución Ejercicio 3

\[ P' = S \cdot P = (1 \cdot 3, 2 \cdot 3, 3 \cdot 3) = (3, 6, 9) \]

El punto \( P \) después del escalado es \( P' = (3, 6, 9) \).

Conclusión

En esta sección, hemos aprendido sobre las transformaciones fundamentales en el espacio 3D: rotaciones, traslaciones y escalados. Estas transformaciones son esenciales para manipular objetos en gráficos por computadora y en diversas aplicaciones de geometría computacional. Asegúrate de practicar estos conceptos con los ejercicios proporcionados para reforzar tu comprensión. En la siguiente sección, exploraremos la composición de transformaciones, que nos permitirá combinar múltiples transformaciones en una sola operación.

© Copyright 2024. Todos los derechos reservados