c - 从 atan2 转换为 atan
问题描述
所以我看到帖子询问如何从atan转换为atan2。但我没有看到相反的情况。那么如何将 atan2 转换为 atan?任何帮助深表感谢!
实际上,我非常惊讶我在堆栈溢出的任何地方都找不到这个问题(我的搜索技能可能有限,哈哈)。我想走这条路,因为 atan2 在数值上似乎比 atan 更稳定(但我可能错了)。
解决方案
你可以做与这个问题中所做的相反的事情。
double myatan(double y, double x)
{
double pi = 3.14159265358979323846;
if (x >= 0)
return atan2(y, x);
else if (y >= 0)
return atan2(y, x) - pi;
else
return atan2(y, x) + pi;
}
推荐阅读
- html - bs_modal 在 flexdashboard 的侧边栏中不起作用
- python - 从python中的一维数组创建矩阵数组
- python - 将单元测试可执行文件链接到 pybind 库(CMake)
- sorting - 行的外部排序。要合并的文件数量?
- c - 字符指针赋值
- flutter - 使用 CupertinoDatePicker 时无法保持在键盘上方
- swagger - 无法为招摇生成类
- javascript - 在 React Native 中按下按钮删除内容
- scala - 条件满足时如何用“stage{col's}”开头的所有列的NULL替换值
- c# - C# 格式化一个数组以发布到 Api