我需要在程序中从 Adobe After Effects 重新创建动画曲线。
例如这张图上的红色曲线(对应的速度图为白色):
我尝试使用从曲线两端提取的值和速度用 Hermite 样条曲线来表示它。 但由于 AE 曲线具有额外的“影响”参数,我的 Hermite 样条未能重现结果。
他们使用什么样的曲线? 它看起来不像三次样条。
After Effects 的图形编辑器使用贝塞尔曲线,它使用影响点(附加到手柄上以实现更好的视觉连接)来影响曲线在关键帧之间的路径。
贝塞尔曲线可以用数学公式来描述: 给定控制点 Pi 的坐标:第一个控制点的坐标 P1 = (x1, y1),第二个控制点:P2 = (x2, y2),依此类推,曲线坐标由取决于段 [0,1] 中参数 t 的方程描述。
对于 4 个控制点:
P = (1−t)3P1 + 3(1−t)2tP2 +3(1−t)t2P3 + t3P 4
有关贝塞尔曲线的更多详细信息可以在这里找到: https://javascript.info/bezier-curve