# 动画概述

# 关键词

requestAnimationFrame 告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画。该方法需要传入一个回调函数作为参数,该回调函数会在浏览器下一次重绘之前执行

在动画开始的时候获取当前时间,然后根据下一次绘制前的时间计算,根据总动画时长来计算比例值,再通过比例值,换算需要动画的数值

# Animation

使用 requestAnimationFrame 来控制着 zrender 的整个动画流程。在每次浏览器重绘之前,判断是否存在动画剪辑,并且根据是否需要更新的条件来判断 Element 或者 Layer 是否需要更新

# Animatable

Element 的基类,提供了元素执行动画的功能如 animate 或者 animateTo 方法

# Animator

动画对象, 提供了动画流程,如 when done start stop 等方法,来控制整个动画流程

# Clip

动画的主控,用来获取动画剪辑中当前的位置,获取比例值,根据缓动效果获取计算后的比例值,反馈给 Animator