浮点算法的简单公式

时间:2013-02-26 00:22:06

标签: math modulo

我需要设置一个alpha值,它是一个浮点值。

我在下面列出了float:alpha对,我希望你们能给我一个简单的关联:

Float:Alpha
0:0
6:0.5
12:1
18:0.5
24:0

最大浮点值为24,alpha不能大于1。 中间值应该是抛物线/正弦曲线,具有高分辨率。

我怀疑这一切都涉及一个模数。请帮帮我!

如果您能用Objective-C语法表达公式,那将会很有帮助。

由于

编辑:让自己清楚: 左列是输入值,右列是输出值。

解释大卫:

“嗨,这是我的输入:0,6,12,18,24,这是我的输出:0,0.5,1,0.5,0。我需要概括一个解决方案。哼。”

2 个答案:

答案 0 :(得分:1)

如果你想要一个正弦波你正在寻找的公式是:

-(cos(n * pi / 12) - 1) / 2

其中n是0到24之间的值。

答案 1 :(得分:0)

我将使用的公式是:

CGFloat alpha = sin(radius / 24.0 * M_PI);

这为0和24提供0,1为12提供1,并为其间的值提供正确的正弦波。

请注意,对于正确的正弦波,6和18的0.5不是有效值。 0.707适用于6和18的正弦波。