5 votos

¿Qué método utilizó esta persona para rotar los puntos en el espacio 2D para imitar la rotación 3D?

Me he estado preguntando sobre cómo la gente parece rotar los gráficos en un área 2D, y me encontré con este gráfico 2D de Desmos, encontrado Aquí (desmos.com) . Una vez que vi esto, miré las ecuaciones y me quedé alucinado por la complejidad de girarlas con diferentes variables ( $a$ , $b$ y $c$ ). Un ejemplo de la una de las ecuaciones de los puntos, que son cartesianas en el formato de $(x,y)$ :
$\left(\cos (u)\cos (v)-\sin (u)\cos (v)+\sin (v),\sin (u)\sin (w)-\cos (u)\sin (v)\cos (w)+\sin (u)\sin (v)\cos (w)+\cos (u)\sin (w)+\cos (v)\cos (w)\right)$
Una ecuación muy larga para encontrar un punto, pero comprensible. Sólo estoy interesado en saber el razonamiento matemático detrás de él usando las funciones para encontrar la ubicación de los puntos, no las líneas (Sólo están conectando múltiples puntos). ¿Está esto relacionado con la matriz de rotación de alguna manera? ¿O está usando algo más de lo que podría saber el nombre para poder seguir investigando en el futuro? Gracias.

5voto

user32262 Puntos 2147

Ajustar todos los parámetros $a, b, c$ a $0$ y entonces se obtiene un cuadrado en el $xy$ plano con vértices en $(\pm 1, \pm 1$ ). Imagina que esto es lo que ves cuando miras un cubo en $\mathbb{R}^3$ cuyos vértices son $(\pm 1, \pm 1, \pm 1)$ "desde arriba" (es decir, desde el $z$ eje a la $xy$ plano). Desde esta perspectiva, la cara superior del cubo (con vértices $(\pm 1, \pm 1, 1)$ ) oculta completamente la cara inferior del cubo (con vértices $(\pm 1, \pm 1, -1)$ ) y por eso sólo se puede ver un cuadrado.

Ahora, si cambias el $b$ (donde $b = \pi v$ ), el cuadrado se gira en el $xy$ plano. Esto corresponde a la rotación del cubo alrededor del $z$ -eje. Cambiando el $a$ (donde $a = \pi u$ ) corresponde a la rotación del cubo alrededor del $y$ y cambiando el $c$ (donde $c = \pi w$ ) corresponde a la rotación del cubo alrededor del $x$ eje. Cada una de estas rotaciones puede realizarse mediante la multiplicación por una matriz de rotación adecuada. En este caso, una posible fórmula para transformar un punto $(x,y,z)^T$ viene dada por

$$ \begin{pmatrix} x \\ y \\ z \end{pmatrix} \mapsto \begin{pmatrix} 1 & 0 & 0 \\ 0 & \cos w & \sin w \\ 0 & -\sin w & \cos w \end{pmatrix} \begin{pmatrix} \cos v & \sin v & 0 \\ -\sin v & \cos v & 0 \\ 0 & 0 & 1 \end{pmatrix} \begin{pmatrix} \cos u & 0 & -\sin u \\ 0 & 1 & 0 \\ \sin u & 0 & \cos u \end{pmatrix} \begin{pmatrix} x \\ y \\ z \end{pmatrix} \\ = \begin{pmatrix} \cos u \cos v & \sin v & -\cos v \sin u \\ \sin u \sin w - \cos u \cos w \sin v & \cos v \cos w & \cos w \sin u \sin v + \cos u \sin w \\ \cos w \sin u + \cos u \sin v \sin w & -\cos v \sin w & \cos u \cos w - \sin u \sin v \sin w\end{pmatrix} \begin{pmatrix} x \\ y \\ z \end{pmatrix}. $$

Esto corresponde a realizar primero una rotación en el $xz$ plano, luego una rotación en el $xy$ plano y finalmente una rotación en el $yz$ plano (y esta es efectivamente la fórmula que utiliza la aplicación).

Miramos la imagen desde arriba y, por tanto, sólo nos interesa el $xy$ -componentes del resultado que nos da

$$ \begin{pmatrix} x \\ y \\ z \end{pmatrix} \mapsto \begin{pmatrix} x \cos u \cos v + y \sin v - z \cos v \sin u \\ x (\sin u \sin w - \cos u \cos w \sin v) + y \cos v \cos w + z (\cos w \sin u \sin v + \cos u \sin w )\end{pmatrix}. $$

Por ejemplo, el punto número $7$ en la aplicación corresponden al vértice $(1,1,1)$ del cubo. Por lo tanto, la fórmula para cambiar $(1,1,1)$ en términos de $u,v,w$ viene dada por

$$ \begin{pmatrix} \cos u \cos v + \sin v - \cos v \sin u \\ \sin u \sin w - \cos u \cos w \sin v + \cos v \cos w + \cos w \sin u \sin v + \cos u \sin w \end{pmatrix} $$

que es la fórmula que has escrito en la pregunta.

Para resumir, la persona que escribió la aplicación consideró un cubo en 3D y lo proyectó (ortogonalmente) al $xy$ plano (2D). Modificando tres parámetros, puedes girar los vértices y aristas del cubo en 3D y ver el resultado proyectado en 2D.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X