逼真的页面转速

时间:2010-07-29 10:18:44

标签: javascript math animation sine

我写过一些翻页软件模拟杂志。目前页面翻转的速度是线性的,我想通过加速和减速使其更加逼真。

在动画开始时它应该很慢,一半应该达到最大速度,然后在动画结束时返回慢速。

我认识的人告诉我,如果你知道动画的百分比,使用正弦或类似的东西,就可以做到这一点!

因此,如果给出一个百分比表示你的动画有多远,你如何设定速度?

pseduo或javascript欢迎回答:)

function speed(percentageThroughAnimation)
{
    return ?????
}

1 个答案:

答案 0 :(得分:1)

它的速度可以表示为正弦函数,因为页面以弧形(或多或少)转动,并且可以看到页面边缘以该速度运行。可以使用页边缘位置的正弦值。这可能会很好。

[编辑]

javascript真的不是我的强项但这样的事可能吗?

function speed(percentageThroughAnimation)
{
    //assuming percentage as indicator of page edge
    var pos = percentageThroughAnimation;

    //the (relative) speed is the sine of the position
    return Math.sin(Math.PI * pos);
}

糟糕,纠正。双哟。应该在[0,pi]范围内。