自定义动画在Raphael.js
问题描述:
Hyphotesis自定义动画在Raphael.js
我有一个路径上某些圈子(参见启动图形形状),他们需要动画到另一条路径(图最终形状)。
有几个动作动画必须做到:
- 移动整个形状到新的位置
- 改变路径
- 降低所有圈半径
下图:
问题
Raphael.js知道h从原始坐标到最后一个圆的动画都会改变半径。由于动画不会像原始和最终动画一样运行,动画看起来不太好。圆从直线x1,y1到x2,y2。
我试过
做直进动画,圆圈移动从开始到结束,改变半径。就像我说的,这不好。
每隔一圈移动一圈,计算每次迭代的新路径并计算圆的位置。这运行非常缓慢。
使用Element.getPointAtLength()计算每次迭代的临时圆位置。这也很慢。
在数组中有硬编码的中间路径并通过每个路径运行动画。这在速度上更好但看起来有点生涩
那么,有什么想法?
答
http://irunmywebsite.com/raphael/additionalhelp.php?v=2&q=element.getpointatlength
我在iPod所以不必多说了,但是这可能帮助
+0
这对我的问题没有帮助,我知道如何使用getPointAtLength。 – morsanu 2012-03-23 11:50:09
我也想回答这个问题......我正在教学时钟,我需要沿着弧线平滑地进行动画的弧。不过,就像你的情况一样,它直接跳到新的点上:http://jsfiddle.net/zFXCb/10/如果我找到解决方案,我会发布一个答案。 – 2013-04-27 03:15:41