The atan2 function is an extended version of the trigonometric inverse tangent function.
In the figure below, tan?=y/x, so tan-1y/x=?. The atan2 function just calculates tan-1y/x with y and x as separate parameters.
The reason it does so is to give a more accurate answer: since the tangent function is periodic,
there are multiple values of x and y that would appear to have the same angle (but do not).
Also, atan2 provides the correct values when y/x is undefined, such as at p/2.
%Input O-(x1,y1) and P-(x2,y2)points
%devloper Er.Abbas Manthiri S
Abbas Manthiri S (2020). get angle and radian between two points (https://www.mathworks.com/matlabcentral/fileexchange/60148-get-angle-and-radian-between-two-points), MATLAB Central File Exchange. Retrieved .
@ Rob Champbell
I updated my coding
now check it up
IT is 100% working correctly
This function does not work. In particular, the author combines the output of the atan function (in radians) directly with internal variables that are clearly in degrees (e.g., 360 and 180). The boundary case results are incorrectly coded as well.
It is also not at all clear why this function is even needed, since all of the quadrant code stuff the author employs to adjust the result of his atan call could be avoided by appropriately using atan2 in the first place. E.g.,
>> pointO = [1 0];
>> pointP = [1 1];
90 <-- Wrong answer
>> atan2(norm(cross([pointO 0],[pointP 0])),dot(pointO,pointP))*180/pi
45 <-- Correct answer
Now errors corrected
@ Jan Simon Thanx for downloading
I used some simple logic with trigonometry formula...
But there need to change I shall do my best
later i will attach clear explaination
I do not understand the description.
Subtracting 360 from the value will not help, if it is e.g. 1e6. You need the MOD() function.
Coding improved for multi input levels
clear Publish view
publish view in demo
Accuracy Calculation Added in demo
I change my formula with applied math logic and also give demo and attached image for proof
Changed one error