2013-05-12 70 views
-2

我經常遇到這個問題,但我不確定我是否已經確定了制定它的最佳方法。我假設它需要一個相互...範圍內反距離的數學公式

基本上,如果x是0,y應該是maxY,如果x是200(或某個maxX),y應該是minY。那麼,如果給定x,計算y的正確的一般公式是什麼?

我在Objective-C中工作,但問題是數學。

+0

你能舉一些例子... – 2013-05-12 03:24:24

+0

你想一個線性關係或別的東西?有無限多的功能可以滿足您的要求 - 更精確的功能可以幫助您獲得您正在尋找的答案! – Floris 2013-05-12 03:27:10

+0

線性很好,是的。約翰·阿塔克說得沒錯。 – soleil 2013-05-12 03:33:56

回答

0

在數學上,這將是這樣的:

y = minY + (maxX - x)/maxX * (maxY - minY) 

爲了防止INT被截斷:

y = minY + (double)(maxX - x)/maxX * (maxY - minY) 
1

使用點斜率形式可以找到正確的公式。

y - y1 = m(x - x1) 

x1 = 0, y1 = maxY 
x2 = 200, y2 = minY 
m = (x2 - x1)/(y2 - y1) = 200/(minY - maxY) 

y - maxY = 200/(minY - maxY) * (x - 0) 
y = 200/(minY - maxY) * x + maxY