1、atan(x)表示求的是x的反正切,其返回值为[-pi/2,+pi/2]之间的一个数。

2、atan2(y,x)求的是y/x的反正切,其返回值为[-pi,+pi]之间的一个数。

atan2返回值解释:

在三角函数中,两个参数的函数atan2是正切函数的一个变种。对于任意不同时等于0的实参数x和y,atan2(y,x)所表达的意思是坐标原点为起点,指向(y,x)的射线在坐标平面上与x轴正方向之间的角的角度度。当y>0时,射线与x轴正方向的所得的角的角度指的是x轴正方向绕逆时针方向到达射线旋转的角的角度;而当y<0时,射线与x轴正方向所得的角的角度指的是x轴正方向绕顺时针方向达到射线旋转的角的角度。

atan2函数最初在计算机编程语言中被引入,但是现在它的应用在科学和工程等其他多个领域十分常见。他的出现最早可以追溯到FORTRAN语言[1],并且可以在C语言的数学标准库的math.h文件中找到,此外在Java数学库、.NET的System.Math(可应用于C#、VB.NET等语言)、Python的数学模块以及其他地方都可以找到atan2的身影。许多脚本语言,比如Perl,也包含了C语言风格的atan2函数。

旁边的图片显示内容是:在一个单位圆内atan2函数在各点的取值。圆内标注代表各点的取值的幅度表示。

图片中,从最左端开始,角度的大小随着逆时针方向逐渐从-π增大到+π,并且角度大小在点位于最右端时,取值为0。

另外要注意的是,函数atan2(y,x)中参数的顺序是倒置的,atan2(y,x)计算的值相当于点(x,y)的角度值。

下方的图片显示的是单位圆上各点在atan2函数上的值,从原点射向(0,1)点的射线,开始绕逆时针方向可以与x轴正方向得到对应各点的复平面的复角,其中几个特殊点取值:

  • (0, 1)对于的复平面夹角为π/2,
  • (−1, 0)对于复平面的夹角为π,
  • (−1, −1)对于复平面的夹角为3π/2,

在回到(1, 0)复平面夹角为 0 = (2nπ mod 2π)。

这些你可以直观的从图中看出。

下面的插图分别显示的是atan2(y,x)和atan(y,x)在坐标平面的三维景象。

注意在atan2(y,x)函数中,从原点辐射出的射线上有常数值,而在atan(y,x)的函数中,结果原点的直线有常数值。

C++中反正切atan2(y,x)与atan(x)相关推荐

  1. 正切atan2(y,x)与atan(x)

    1.atan(x)表示求的是x的反正切,其返回值为[-pi/2,+pi/2]之间的一个数. 2.atan2(y,x)求的是y/x的反正切,其返回值为[-pi,+pi]之间的一个数. 在三角函数中,两个 ...

  2. matlab中sort(),atan2(y,x),normrnd(),boxplot()函数,cell数组用法学习

    1.Y=sort(X,DIM,MODE) 参数DIM表示对哪一个维数进行排序,例如当X是一个二维矩阵,当DIM=1时表示对X的每一列进行排序,当DIM=2时表示对X的每一行进行排序. 参数MODE表示 ...

  3. C++中的atan2与atan

    C++中的atan2与atan 1. atan(x) 2. atan2(y,x) 3. atan(y/x)与atan2(y,x)的区别 反正切函数 atan(double x)与 atan2(doub ...

  4. matlab 中tan(x),atan(y/x),atan2(y,x) 总结

    (1) 在数学中,函数f(x)=tanx的定义域为:{x|kπ- π/2 <x<kπ+ π/2 ,k∈Z},值域为:[-∞,+∞] (2) atan(y/x) 根据正切值为y/x求出对应的 ...

  5. 透彻说明反正切atan2函数比反正切atan函数的区别

    flash里,反正切atan2函数比反正切atan函数(即角的对边比邻边)更为有用,它可以让我们做出对物体正确的旋转.请记住Flash里的y轴 坐标与数学的是颠倒的.(上面演示所示),Flash是以弧 ...

  6. history of program atan2(y,x)和pow(x,y)

    编年史 1951 – Regional Assembly Language  1952 – Autocode  1954 – IPL (LISP语言的祖先)  1955 – FLOW-MATIC (C ...

  7. atan2(a,b)和atan的区别

    atan2(a,b)是4象限反正切,它的取值不仅取决于正切值a/b,还取决于点 (b, a) 落入哪个象限:    当点(b, a) 落入第一象限时,atan2(a,b)的范围是 0 ~ pi/2; ...

  8. 记录一次自己的奇葩数学学习-java中的atan2和Excel中的atan2 以及菜鸟和w3cshool的奇葩指导

    首先是Excel中的atan2(x_num,y_num) atan2(45,30)≈0.588 接下来是各大教程网站的内容 结果为 0.982793723247329 肯定有一个错了,瞎子般的我竟然没 ...

  9. C++:atan2(y, x)函数用法详解

    atan2(y, x),C++中一种double类型的反正切函数,返回值为弧度制下的角度,是点(0,0)和(x,y)的连线与X轴正半轴的夹角,其值域为 [-π,π] (当y=0时,可以取到±π),且在 ...

  10. python中x y表示_Python中表达式x += y和x = x+y 的区别详解

    前言 本文主要给大家介绍的是关于Python中表达式x += y和x = x+y 区别的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 直接看下面代码: x +=y In [66]: id( ...

最新文章

  1. hereim_美句_1
  2. java怎么让遮罩层下面滚动_vue项目弹出层后禁止body底层的滚动事件
  3. 文件或目录损坏无法读取
  4. PHP四种基本排序算法
  5. JavaScript 大整数相加后精度 如何解决
  6. mysql本地连接1045_MySQL密码正确却无法本地登录-1045
  7. 用fft对信号进行频谱分析实验报告_【鼎阳硬件智库原创︱测试测量 】基于全数字中频技术频谱分析仪的工作原理...
  8. Linux串口属性设置
  9. 近几年美国人口数据matlab,2010-2019年美国人口数量及人口性别、年龄、城乡结构分析...
  10. 使用 wget 整站下载
  11. 如何在Word中输入带方框对勾
  12. 我和我儿子历时5年的消除疤痕的艰辛历程
  13. Excel中如何使用字符串提取函数LEFT
  14. Error opening archive: Failed to open ‘/Users/**\**/Library/
  15. JS循环输出数组及数组键值
  16. 人间不值得计算机谱子,人间不值得简谱-黄诗扶演唱-桃李醉春风曲谱
  17. 0.618法C语言编程,c语言编程题--0.618法求最小值
  18. kali中文乱码解决方法
  19. 上海理工大学光电信息与计算机工程学院在哪个校区,上海理工大学光电信息与计算机工程学院怎么样...
  20. xml阅读器_福昕PDF阅读器永久免费版!

热门文章

  1. 什么是熔断? 熔断有哪几种状态 断路器的工作原理、如何开启熔断?
  2. 化工机械基础期末复习题及答案
  3. win8.1下安装vc6
  4. 那,那,那,轻灵的舞影,绝美的身姿──对上古绚丽舞姿的乱谈
  5. java简易计算器报告_JAVA实训报告简易计算器.doc
  6. JAVA Signal Handing
  7. 六线小县城实录美食篇
  8. 第一篇:微信公众平台开发实战Java版之了解微信公众平台基础知识以及资料准备
  9. 小学计算机画图课件第一册,第一册信息技术课件-第三章 第1课 认识“画图”软件 甘少版(共12张PPT)...
  10. ubuntu - sudo file 编辑报错 sudo: no valid sudoers sources found, quitting