获得高度百分比,垂直音量滑块

时间:2011-12-01 20:14:34

标签: actionscript-3 slider

好吧,我现在正在做脑屁,不能直接思考。我以前做了很多次。

我正在制作垂直音量滑块。滑块轨道的顶部为-80,底部为-16。所以我的音量控制柄可以在Y轴上在-80和-16之间滑动。

-48基本上是50%。我不能为我的生活现在弄清楚这个百分比,有人可以给我一些数学帮助。我在高中三年的暑期学校学习数学是有原因的:P

2 个答案:

答案 0 :(得分:2)

max = -80
min = -16
so total points in range = 64
so 50% of total = 64 / 2 = 32

现在从-16开始向上移动。当你向上移动32(50%)点时,你得到-48。

因此,范围16到80中任何值v(正数)的百分比为:

percent = (v - 16) / 64 * 100

对于此示例:(48 - 16) / 64 * 100 = 50

答案 1 :(得分:1)

否定数字让我对这类事情感到困惑,但这就是电子表格和试用版的内容。错误是为了。

如果我正确地阅读了这个问题,你知道-48是50%,你想知道其他输入的百分比(例如-12,-60等)

  1. 删除偏差,使我们的范围为0 .. max
  2. 除以最大值以获得百分比
  3. 取绝对值
  4. 如果v是你的输入值(-48),那么p = Math.abs((v+16)/64)其中“+16”只是减去你的下限(-16),而“64”是上限的绝对值减去下界。

    换句话说,

    var lower:int = -16;
    var upper:int = -80;
    var v:int = -32;
    var p:Number = Math.abs((v - lower) / (Math.abs(upper - lower));
    

    我没有测试过这个 - 这里没有编译器。