Rotación de un segmento de línea en 3D a una orientación prescrita

Tengo un segmento de línea general con puntos finales ( X 1 , y 1 , z 1 ) y ( X 2 , y 2 , z 2 ) hace referencia a un marco de coordenadas cartesianas 3D E. Deseo rotar este marco de coordenadas E a un nuevo sistema de coordenadas F tal que el nuevo X El eje es paralelo a este segmento de línea.

Básicamente, estoy buscando tres ángulos de Euler únicos ( α , β , γ ) , utilizando el habitual z y z convención, en términos de las coordenadas de los dos puntos finales en el marco de coordenadas original. Por lo tanto, en el nuevo marco de coordenadas, tendré que satisfacer tres ecuaciones: 1. y 1 = y 2 , 2. z 1 = z 2 y 3. ( X 2 X 1 ) 2 = ( X 2 X 1 ) 2 + ( y 2 y 1 ) 2 + ( z 2 z 1 ) 2

¿Se prescribe el uso de ángulos de Euler para el problema, o consideraría alguna representación de la rotación (por ejemplo, cuaterniones)?
Presumiblemente, ¿quieres que la rotación sea con el origen como centro?
Se prescriben los ángulos de Euler. ¿Hay alguna forma de pasar de otra representación de la rotación a los ángulos de Euler?
El origen del sistema de coordenadas original y transformado debe ser el mismo.

Respuestas (1)

Entonces, probablemente sea más fácil pensar en esto lógicamente, en lugar de hacerlo directamente en términos de espinores/cuaterniones. Esto es lo que puede hacer: está rotando el X ^ vector sobre el vector ^ . Esto se puede hacer en un proceso de dos pasos: rotar X ^ sobre ^ proyección de s sobre el plano xy. esto pone ^ sobre el z X plano, y sólo se requiere una rotación más--rotación sobre y --alinear X ^ con ^ .

Gracias, eso es exactamente lo que he estado tratando de hacer durante las últimas horas, pero algo está mal con mi cálculo de puntos finales arbitrarios.
El cálculo no debe preocuparse por los puntos finales, solo por la dirección de la línea en sí.
Si gracias. El problema ahora está resuelto y era un problema numérico con mi algoritmo en lugar de un problema con las matemáticas subyacentes. Estoy usando el método que me propusiste y funciona muy bien.