我正在创建一个天文台,我已经拥有了所有代码。现在我试图将“缺口”的旋转与秒的通过联系起来。我有以下代码块:
var minutesNotchAnimation = new Kinetic.Animation(function(frame) {
var notch = self.minutesNotchLayer.get('#minutesNotchShape')[0];
notch.rotate(rotationAngle);
}, this.minutesNotchLayer);
minutesNotchAnimation.start();
如何每秒执行一次动画?另外,我如何应用自定义缓和?最后......我如何控制动画的长度?我发现KineticJS文档确实缺乏地方,也没有很多全面的资源可以深入解释动画类。
提前致谢!
P.S。如果有人需要查看完整代码,这里有一个小提琴 - > http://jsfiddle.net/k4xA8/
答案 0 :(得分:1)
您无法设置动画间隔,因为此对象没有这样做。如果你想要更准确(并使用缓动),那么使用Tween会更容易。
顺便说一句,您可以使用frame.timeDiff属性或frame.time来控制动画......
var minutesNotchCount = 0;
var minutesNotchAnimation = new Kinetic.Animation(function(frame) {
minutesNotchCount += frame.timeDiff;
var notch = self.minutesNotchLayer.get('#minutesNotchShape')[0];
if (minutesNotchCount >= 40) {
notch.rotate(0.25);
minutesNotchCount = 0;
}
}, this.minutesNotchLayer);
minutesNotchAnimation.start();