Finding Angle between 2 points

Hello,
I need to calculate the angle between two point from the matlab plot. I tried by applyingthe code which is provided in the discussion but the result is not correct.
The image is attached, I want to find the angle theta which is fromed by point p1,p2 and o.
P1,P2 coordinates are known to us.
I tried using the code provided in the link attached below but the answer is not correct.
I need your help regarding the same.
Thanks in Advance.
Awaiting for response.

2 Comments

Do you know the coordinates of O point ? Or anything about that ?
yes the point O coordinates are known.

Sign in to comment.

Answers (2)

Is this what you mean?
P1 = [10 210];
P2 = [140 210];
Z0 = [(P1(1)+P2(1))/2 225]; % Reference point, assuming it is in the middle of P1 & P2
degree = 2*atand((P2(1)-Z0(1))/(Z0(2)-P2(2)));

3 Comments

The coordinate of Z0 is known.
As shown in the figure P1,P2 and O point coordinates are know.
For this case Z0 appears to be in the middle but it might not be true in other cases.
But its possible to obtain the coordiante.

Sign in to comment.

MaryD
MaryD on 20 Apr 2020
Edited: MaryD on 20 Apr 2020
r1=sqrt((x1-xo).^2+(y1-yo).^2);
r2=sqrt((x2-xo).^2+(y2-yo).^2);
alpha=acos((x1-xo)/r1);
beta=acos((x2-xo)/r2);
theta=alpha-beta;
keep in mind that acos is specified for pi <0:pi> so if one (or both) points would be placed under O point you have to adjust this equation.

Asked:

on 20 Apr 2020

Commented:

on 22 Apr 2020

Community Treasure Hunt

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

Start Hunting!