SA-MP Forums

SA-MP Forums (https://forum.sa-mp.com/index.php)
-   Scripting Help (https://forum.sa-mp.com/forumdisplay.php?f=12)
-   -   atan2 rotation angle between 2 points (https://forum.sa-mp.com/showthread.php?t=417037)

Daslee 19/02/2013 01:20 PM

atan2 rotation angle between 2 points
 
How I can get rotation angle in degrees in pawn using atan2? I tried this:
pawn Code:
forward getAngleBetween(Float:x1, Float:y1, Float:x2, Float:y2);
public getAngleBetween(Float:x1, Float:y1, Float:x2, Float:y2){
    new Float:angle = atan2(y1-y2, x1-x2) * 57.2957795;
    return angle;
}

But got this result:
-979055680

And tried this:
pawn Code:
forward getAngleBetween(Float:x1, Float:y1, Float:x2, Float:y2);
public getAngleBetween(Float:x1, Float:y1, Float:x2, Float:y2){
    new Float:angle = atan2(y2-y1, x2-x1);
    return angle;
}

And here is result:
-1029692736

I also tried those codes in Java programming language, and it worked perfect, but here in pawn it's wrong. Where could be the problem?

FUNExtreme 19/02/2013 01:28 PM

Re: atan2 rotation angle between 2 points
 
This might be interesting to read: http://forum.sa-mp.com/showthread.php?t=194942

Daslee 19/02/2013 01:34 PM

Re: atan2 rotation angle between 2 points
 
Quote:

Originally Posted by ****** (Post 2391223)
Angle is a float, not an integer (that function should give a warning when you compile).

Yes, I'm getting tag mismatch error on line:
pawn Code:
return angle;



Quote:

Originally Posted by FUNExtreme (Post 2391233)
This might be interesting to read: http://forum.sa-mp.com/showthread.php?t=194942

Already read this, but can't find solution for my problem. Even in that topic u gave, he getting 0-360 angle, and I'm getting in thousands.

EDIT: Fixed it. Never knew that tag mismatch could do so big changes to results, thanks ****** :)


All times are GMT. The time now is 09:38 AM.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.