Plot a unit vector in MATLAB, given its starting point and the orientation about 3 axes

37 views (last 30 days)
I have a point [x y z] and the Euler orientation angles [r p y]. How can I plot a unit vector in MATLAB starting from [x y z] in the orientation of [r p y] ?
  3 Comments
crisdeodates
crisdeodates on 22 Nov 2019
Thanks Adam, but my requirement is to use Euler angles to plot a unit vector starting at the specified point. And my goal is to get the plot in 3D.

Sign in to comment.

Accepted Answer

crisdeodates
crisdeodates on 22 Nov 2019
Edited: crisdeodates on 22 Nov 2019
At last found a very simple solution.
Converted the euler angles to rotation matrix and rotated to unit vector.
  2 Comments
Adam Danz
Adam Danz on 22 Nov 2019
Congrats! If you provide a simple demo or example in your answer it will be more useful to people who may come across this post in the future.
crisdeodates
crisdeodates on 22 Nov 2019
Edited: crisdeodates on 22 Nov 2019
Sure ...
Lets say we want to visualize a vector at a given point [0 0 10] and orientation [0 0 50].
  1. Convert the orientation angles to radians using deg2rad function.
  2. Find the rotational matrix using eul2rotm function in the sequence (eg: XYZ) required.
  3. Initialize a unit vector along x-axis as [1 0 0].
  4. Rotate the unit vector using the rotational matrix obtained in step 2.
  5. Plot the newly formed directional vector usingquiver3 function.

Sign in to comment.

More Answers (0)

Categories

Find more on 3-D Scene Control in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!