【发布时间】:2011-11-19 20:56:13
【问题描述】:
我正在画布上绘制一个非传统的时钟。时间由秒环、秒针、分钟环和小时环表示。我正在使用 webkit/mozRequestAnimationFrame 在适当的时间进行绘制。我想修改第二个环以快速动画到下一秒(125ms - 250ms)并使用二次缓动(而不是那个可怕的快照)。
与 Raphael JS Clock 的第二个圆环非常相似,只是它使用不同的缓动:http://raphaeljs.com/polar-clock.html
JS Fiddle 链接(必须在 Chrome、Firefox 或 Webkit Nightly 中查看):
任何帮助将不胜感激!
这很接近,但仍然很生涩:
var startValue;
if (milliseconds < 500) {
if (!startValue) startValue = milliseconds;
if (milliseconds - startValue <= 125) {
animatedSeconds = seconds - 0.5 + Math.easeIn(milliseconds - startValue, startValue, 1000 - startValue, 125)/1000;
} else {
animatedSeconds = seconds;
}
drawRing(384, 384, 384, 20, animatedSeconds / 60, 3 / 2 * Math.PI, false);
} else {
drawRing(384, 384, 384, 20, seconds / 60, 3 / 2 * Math.PI, false);
startValue = 0;
}
【问题讨论】:
-
...帮助什么? ;-)。你应该在这里拼出你的问题,而不仅仅是链接到小提琴......
-
我在这里说过:“修改第二个环以动画...而不是捕捉...”基本上我只想将动画添加到第二个环,而不是只显示下一个价值,它的动画效果很好。
标签: html animation canvas clock easing