這是不是一個真正的編程問題,但數學中的一個。
假設一個二次函數,形式爲y = ax + bx + c。
填充已知的三值對:
9.9 = a + b + c
1 = 10000a + 100b + c
0.01 = 40000a + 200b + c
三個方程+三位unknows =通過簡單的替換可解的。
9.9 = a + b + c
c = 9.9 - a - b
1 = 10000a + 100b + c
1 = 10000a + 100b + 9.9 - a - b
1 = 9999a + 99b + 9.9
1 - 99b = 9999a + 9.9
-99b = 9999a + 9.9 - 1
-99b = 9999a + 8.9
b = -101a - 8.9/99
0.01 = 40000a + 200b + c
0.01 = 40000a + 200b + 9.9 - a - b
0.01 = 39999a + 199b + 9.9
0.01 = 39999a + 199(-101a - 8.9/99) + 9.9
0.01 = 39999a - 20099a - 17.89 + 9.9
0.01 = 19900a - 7.99
0.01 - 19900a = -7.99
-19900a = -8
a = 8/19900
a = 0.000402
b = -101a - 8.9/99
b = -808/19900 - 8.9/99
b = -0.1305
c = 9.9 - a - b
c = 10.0301
換句話說:Gamma = 0.000402 * Pos^2 - 0.1305 * Pos + 10.0301
代替這種_lookup table_的,我只想用一個函數來直接計算。 – NGLN