Clear Filters
Clear Filters

get vector orientation from coordinates of two ends

7 views (last 30 days)
I a starting point of a vector at (x1,y1) and it ends at (x2, y2).
Is there anyway I can get the vector orientation theta in rad? when theta = 0 is completely arbitrary. However, maybe it is easier when the vector is pointing to right, since sin(theta) = 0 at that point.
If use the slope approach, cases where vector is pointing straight up or down cannot be solved because the slope is inf or -inf.
Any suggestions? Thanks very much!

Accepted Answer

dpb
dpb on 25 Aug 2018
Edited: dpb on 25 Aug 2018
doc atan2
theta=atan2(x2-x1,y2-y1);
If you'll write x,y as vectors as
x=[x(1) x(2)]; y=[y(1) y(2)];
then you can write
theta=atan2(diff(x),diff(y));
  1 Comment
Ohad Givaty
Ohad Givaty on 8 Dec 2020
you should do atan2(diff(y),diff(x));
see documentation: https://www.mathworks.com/help/matlab/ref/atan2.html

Sign in to comment.

More Answers (0)

Categories

Find more on Plasma Physics in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!