使用Math.atan2 计算AB两点与水平线的夹角,Math.atan2(A.y-B.y,A.x-B.x)和Math.atan2(B.y-A.y,B.x-A.x)的区别

文章详细解释了如何在JavaScript中使用Math.atan2函数计算两点与水平线的夹角,强调了参数顺序对结果影响,以及如何根据需要确定角度的方向。
摘要由CSDN通过智能技术生成

chatgpt:

Math.atan2 返回一个 -π 到 π 之间的值。

在JavaScript中使用Math.atan2函数计算两点与水平线的夹角时,Math.atan2(y, x)接受两个参数:y代表垂直方向的偏移量,x代表水平方向的偏移量。这两个参数的顺序决定了结果的正负号和角度的方向。

  1. 当使用Math.atan2(A.y - B.y, A.x - B.x)时:

    • (A.y - B.y)表示点A与点B在垂直方向上的偏移量。
    • (A.x - B.x)表示点A与点B在水平方向上的偏移量。
    • 这个表达式计算的是从点B指向点A的方向的角度。也就是说,结果是点A与水平线的夹角。
  2. 当使用Math.atan2(B.y - A.y, B.x - A.x)时:

    • (B.y - A.y)表示点B与点A在垂直方向上的偏移量。
    • (B.x - A.x)表示点B与点A在水平方向上的偏移量。
    • 这个表达式计算的是从点A指向点B的方向的角度。也就是说,结果是点B与水平线的夹角。

因此,这两种方法得到的角度值相同,但是符号可能不同,表示的方向也不同。通常情况下,你应该根据具体情况选择合适的表达式,以便得到你想要的角度方向。

比如A(0,0),B(1,1)

如果是A-B,那个指向的就是A的方向:
Math.atan2(A.y-B.y,A.x-B.x) 换算成角度是-135度

如果是B-A,那个指向的就是B的方向:

Math.atan2(B.y-A.y,B.x-A.x) 换算成角度是45度

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值