质押
我在一条路径上有一些圆圈(见图中的开始形状),它们需要动画到另一条路径(图中的结束形状)。
动画必须做的有几个 Action :
- 将整个形状移动到新位置
- 改变路径
- 减少所有圆半径
图:
问题
Raphael.js 知道如何将圆从原始坐标动画化到最终坐标并改变半径。因为动画的运行路径与原始动画和最终动画不同,所以动画看起来不太好。圆圈从 x1,y1 到 x2,y2 在一条直线上。
我尝试了什么
制作简单的动画,将圆从头移动到尾,改变半径。就像我说的,这不行。
间隔移动每个圆圈,在每次迭代时计算新路径并计算圆圈的位置。这运行得非常慢。
使用 Element.getPointAtLength() 在每次迭代中计算临时圆圈位置。这也很慢。
在数组中硬编码一些中间路径,并在每个路径中运行动画。这在速度方面更好,但看起来有点不稳定
那么,有什么想法吗?
最佳答案
http://irunmywebsite.com/raphael/additionalhelp.php?v=2&q=element.getpointatlength
我正在使用 iPod,所以不多说,但这可能会有所帮助
关于javascript - Raphael.js 中的自定义动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9819377/