What would the angles be for a 3D vector?

32 views (last 30 days)
Nathan
Nathan on 6 Dec 2013
Answered: Roger Stafford on 6 Dec 2013
Hi, I've got a vector with components, x, y and z. I need to know the x, y and z angles for that vector.
I assume that the x-angle would be atand(max(y)/max(x))) and I also assume that the y-angle is 90-x.
Would those be correct for a 3D vectors definition of a x and y angle? Also, how do I calculate the z-angle?

Answers (1)

Roger Stafford
Roger Stafford on 6 Dec 2013
Let x, y, and z be the vectors' three components. The angle the vector makes relative to the positive x-axis can be computed as:
ax = atan2(sqrt(y^2+z^2),x);
Similarly ay and az, the angles with respect to the y and z axes, are given by:
ay = atan2(sqrt(z^2+x^2),y);
az = atan2(sqrt(x^2+y^2),z);
These are somewhat more accurate than using the ax = acos(x/sqrt(x^2+y^2+z^2)) type formula. Note that the resulting angles are in radians.

Categories

Find more on Mathematics in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!