900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > atan和atan2反正切计算

atan和atan2反正切计算

时间:2020-04-08 19:55:58

相关推荐

atan和atan2反正切计算

typedef struct point {double x, y;}point;

//给定两个点point a(x1,y1),b(x2,y2);

使用反三角函数atan求斜率,原型如下

float atan( float arg ); doubleatan( double arg );long double atan( long double arg );doubleatan( Integral arg );

double angle=atan((y2-y1)/(x2-x1));

返回值

若不出现错误,则返回 arg 在$ [- π/2 ; +π/2]$ 弧度范围中的弧(反)正切( $arctan(arg) $)。值域有限,一四象限,斜率不存在不能求

使用反三角函数atan2求斜率,原型如下

float atan2( float y, float x );doubleatan2( double y, double x );long double atan2( long double y, long double x );Promoted atan2( Arithmetic1 y, Arithmetic2 x );

返回值

若不出现错误,则返回 y/x 在 $(-π ; +π] $弧度范围中的弧(反)正切( arctan(y/x) )。值域扩展到四个象限。

atan2(y,x)所表达的意思是坐标原点为起点,指向(y,x)的射线x轴正方向形成角的角度。在x=0的时候:

1.当y>0时,指的是绕逆时针到达射线所旋转的角的角度;

2.而当y<0时,指的是绕顺时针达到射线所旋转的角的角度。

这样就可以求两个点表示的线段(向量)和x轴正向的角度,如下

double angle=atan2((y2-y1),(x2-x1));

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。