表达式解析在上一篇病毒落水中我已经呕心沥血又是示意图又是流程图地讲解过了,这里我不再逐条展开,关键点在这里“if (p>=value) {q;}”,在上文的定义中,p和q的差别在于q在正弦函数部分“v*amp*Math.sin(t*(t+1)*freq)”前面乘了一个“-1”,就使得value值以上部分被翻转到value轴线以下。快用你的像素眼找找以下两条的区别:
p=value+v*amp*Math.sin(t*(t+1)*freq)/Math.exp(t*decay);
q=value+-v*amp*Math.sin(t*(t+1)*freq)/Math.exp(t*decay);
最后的话
至此,我的弹性表达式存货就都已经奉上了,真的一滴都没有了!
这里再做一个回顾:
一、《从零开始学做表达式动画之——铃铛摆动动画》
二、《从零开始学做表达式动画之——病毒落水弹跳动画》
三、《从零开始学做表达式动画之——病毒落地反弹动画》(&橡皮筋回弹动画)
3篇都已经收藏的朋友,恭喜你又多了3篇再也不会看的文章!