如何使用单个参数定义曲线的变换?

问题描述

假设我有一条由 4 个点定义的曲线,并且有 2 个曲线“状态”,如下图所示:

enter image description here

我想通过[0,1]范围内的单个参数控制曲线的变形,0对应上曲线,1对应下曲线,中间值如0.5应该代表从上曲线到下曲线的一些中间转换曲线。怎么做?

解决方法

你知道如何参数化一个点的运动吗?

假设你有一个可以在垂直线上移动的点,它的位置在两个极端之间变化,y0 和 y1

现在分配一个参数 t, 从 0 t0 1 开始变化,这样 y(t=0) = y0 和 y(t=1) = y 1.

现在做 t 的线性函数:y(t) = y0 + t(y1-y0)>

现在看看你的曲线。点从一种状态到另一种状态的唯一运动似乎是垂直的。因此,四个点中的每一个都像上面 y(t) 的示例一样移动,但是 x、y0 和 y1 的值不同。 (从您的绘图中,似乎两个端点是静止的,两个中间点的移动方式相同,但这只是一种特殊情况。)