路径、网格与曲面变形
先创建对应关系
变形需要对应关系:插值器必须知道来源元素要变成哪个目标元素。KineticKit 会在动画开始前验证这项关系。
路径
兼容路径直接插值命令坐标。需要统一两条路径的命令结构时,系统估计曲线弧长、依弧长比例找分割参数,再以 de Casteljau 法补成对应区段。配对控制点满足 \(R_i(u) = (1 - u) P_i + u Q_i\),所以每一帧都保有相同命令拓扑。
网格
拓扑相同的网格会逐分量插值顶点矩阵:若 \(V_0, V_1 \in \mathbb{R}^{n \times 3}\),则 \(V(u) = (1 - u) V_0 + u V_1\)。保存顺序与语义识别不同时,可明确提供顶点的对应顺序。
高度场曲面
规则曲面固定 \(x, y\) 网格,只插值高度与选用的颜色数据。曲面变形与相机绕行可用 with_() 同时进行。
Path2D(commands)
由移动、直线、Bézier 曲线与闭合命令组成的不可变 2D 路径。
MeshData(vertices, faces, normals=None, colors=None)
保存已验证的顶点、面与选用的对应数据,供网格插值使用。
SurfaceGrid(points)
规则的 \(x,y\) 网格及其高度与选用颜色样本,供曲面变形使用。
变形或转场
只有对象确实不同时才用 SceneTransition 交叉淡化;中间几何有意义时用变形。