作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在做一个项目,该项目需要我计算从可变点 A 到可变点 B 在 0 - 360 度范围内的航向,以让 A 点处的对象面对点 B。
现在,我不确定如何实现这一点,我用谷歌搜索但没有找到任何好的解决方案。
在任何情况下,我如何计算二维空间中从 A 点到 B 点的航向?
最佳答案
在 C 或 C++ 等语言中,您可以使用 atan2
函数,该函数计算 y/x 在四个象限上的反正切,同时考虑 x 和 y 的符号。
如果 A 在 (x1, y1) 而 B 在 (x2, y2),则以弧度表示的航向由下式给出:
theta_radians = atan2(y2 - y1, x2 - x1);
theta_radians
的范围是 -π 到 +π。您可以将其转换为 0 到 360 范围内的度数,如下所示:
theta_degrees = (theta_radians + M_PI) * 360.0 / (2.0 * M_PI);
关于math - 在二维空间中从 A 点到 B 点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4403515/
我是一名优秀的程序员,十分优秀!