给定输入限制范围的输出值公式 - 滑块UI

时间:2015-03-05 20:23:28

标签: algorithm math slider formula uislider

鉴于以下参数:

minX = 10.0
maxX = 200.0
minY = 300
maxY = 700

用户可以在minX和maxX之间移动x。找到y使得它在minY和maxY之间成比例,因为x在minX和maxX之间。因此,如果x = 10,则y = 300.如果x = 200,则y = 700。

虽然x是浮点数,但y必须是int。

这个公式是什么样的?

我已尝试过以下内容,但它的工作方式相反。

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

1 个答案:

答案 0 :(得分:0)

这应该有效:

((x - minX) / (double)(maxX - minX)) * (maxY - minY) + minY

((x - minX) / (double)(maxX - minX))计算x范围内x的“百分比”。然后,您只需乘以y范围的幅度((maxY - minY))并添加下限以获得y