3D system definition: How btaining the angle between a single axis and a plane

2 visualizaciones (últimos 30 días)
Hello, I am having trouble obtaining the angle between a vector and a plane which are defined by two different rotation matrix.
I have two objects, A and B, which are defined by rotation matrices R (Rotation matrix from global origin to A) and R' (Rotation matrix from global origin to B).
R = [a b c; d e f; g h i]
R'= [a' b' c'; d' e' f'; g' h' i']
I want to obtain the rotation in degrees between the axis X from object A to the plane XZ (and eventually XY) from object B.
Thank you in advance.
Alonso

Respuesta aceptada

Matt J
Matt J el 1 de Ag. de 2024
and eventually XY
That would just be the angle between Yprime and Z, wouldn't it?
Yprime=Rprime(:,2);
Z=R(:,3);
angle = acosd( dot(Yprime,Z)/norm(Yprime)/norm(Z) )
  3 comentarios
Matt J
Matt J el 1 de Ag. de 2024
Editada: Matt J el 1 de Ag. de 2024
Same sort of thing...
X=R(:,1);
Yprime=Rprime(:,2);
Zprime=Rprime(:,3);
angle1 = 90-acosd( dot(Yprime,X)/norm(Yprime)/norm(X) ) %Angle with plane X'Z'
angle2 = 90-acosd( dot(Zprime,X)/norm(Zprime)/norm(X) ) %Angle with plane X'Y'

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Assembly en Help Center y File Exchange.

Productos


Versión

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by