我必须在只有以下数学工具的环境中实现asin,acos和atan:
我也已经具有相当好的平方根函数。
我可以使用它们来实现合理有效的逆三角函数吗?
我不需要太大的精度(无论如何,浮点数的精度都非常有限),基本的近似就可以了。
我已经半数决定使用表查找,但是我想知道是否有一些更整洁的选项(不需要花几百行代码即可实现基本数学)。
编辑:
为了解决问题 :我需要以每秒35帧的速度每帧运行数百次该功能。
您是否需要高精度的arcsin(x)功能?如果否,则可以arcsin在N个节点中进行计算,并将值保留在内存中。我建议使用行近似。如果x = A*x_(N) + (1-A)*x_(N+1)然后 x = A*arcsin(x_(N)) + (1-A)*arcsin(x_(N+1))在那里arcsin(x_(N)) 是已知的。
arcsin(x)
arcsin
x = A*x_(N) + (1-A)*x_(N+1)
x = A*arcsin(x_(N)) + (1-A)*arcsin(x_(N+1))
arcsin(x_(N))