为atan

时间:2016-10-31 16:22:01

标签: c++ trigonometry

我的应用程序需要非常低的精度(2度以内)和非常高的速度来确定给定上升/运行的线的角度。具体来说,精度实际上只需要更接近x轴(低于45度或高于135度),我认为这更容易实现,因为当角度接近90时,它接近未定义的值。目前,我使用math.h库中的atan2,但我希望更快。

我已经看过this示例,并且认为atan的查找表就足够了,但是使用arctan而不是tan来制作一个更难处理,因为我必须考虑斜率以及它如何能够表示为整数,因此它可以用作表的索引。

以前有人这样做过吗?我想我需要有某种比例因子,所以当我上升/运行并将我的斜率作为小数时,我可能需要将它乘以一个常数值,否则45以下的所有值都将为0度。但是,在这种情况下,我牺牲了45度以上的许多精度。真的,我不需要区分75-105度之间的任何东西。但是在30/160度范围内,能够在2-3度处获得精确度是很好的。

0 个答案:

没有答案