1 votos

Rotación en 3D (transformación del sistema de coordenadas)

¿Cómo puedo girar un punto alrededor del punto [0,0,0] en 3D. En la imagen dibujo situación específica para la ilustración. example

Primero conozco el punto G[x,y,z] y lo traslado al eje Z, donde la distancia al centro es el tamaño del vector g. Entonces los vectores g y gt forman un ángulo. Entonces obtengo un punto A y necesito rotarlo igual que rote G antes. Pero no se como. Creo que podría llamarse transformación del sistema de coordenadas.

He oído que debo utilizar la matriz de transformación. ¿Podría darme información detallada?

1voto

bubba Puntos 16773

Necesitas saber el eje alrededor del cual vas a rotar. Se trata de una línea que pasa por $(0,0,0)$ así que todo lo que necesitas es un vector unitario paralelo a esta línea. Supongamos que este vector unitario es $\mathbf{u} = (u_x, u_y, u_z)$ . Entonces conectas este vector y tu ángulo $\theta$ en la fórmula dada en esta página de wikipedia para obtener la matriz de rotación.

Para rotar un punto determinado, basta con multiplicar sus coordenadas por esta matriz de rotación.

0voto

Tsu Jan Puntos 126

La respuesta de @bubba está totalmente bien. También ten en cuenta que puedes calcular tu eje de rotación tomando el producto cruzado de $G$ y $G_t$ . Suponiendo que $G=[x,y,z]$ y $G'=[x',y',z']$ las coordenadas de $G\times G_t$ vienen dadas por $$ G\times G_t = [yz'-y'z,\;zx'-z'x,\;xy'-x'y]. $$ También tenga en cuenta, que estos chicos son los menores de la siguiente matriz $$ \begin{bmatrix} * & * & * \\ x & y & z \\ x' & y' & z' \\ \end{bmatrix} $$ tomados con signo "+" o "-" como en la descomposición de Laplace. Esto también explica por qué el vector $G\times G_t$ es perpendicular a ambos $G$ y $G_t$ siendo linealmente independientes (pista: poner las coordenadas de $G$ o $G_t$ en lugar de los símbolos de estrella y ver qué pasa). Mucha suerte.

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