0

我有 A(0,0) 点和 b(0, 100) 点,我有一个 X ms 的转换时间。我需要在给定的 X 毫秒时间内将我的对象形式点 A 移动到 B。请帮忙。一些伪代码会有所帮助。

我的参考代码:

   float time= (float)totalTime / halfTransitionTime;
   new.x = start.x + (end.x - start.x) * time;
   new.y = start.y + (end.y - start.y) * time;

但如果我的时间计算正确,我就不是,因为我没有得到想要的输出。请帮忙。

在上面的类中 translateCalc() 是我进行线性插值计算的方法。我似乎没有得到正确的计算。请帮忙

4

1 回答 1

1

您的线性插值计算是正确的,但将时间计算更改为:

float time= ((float)currentTime) / totalTime;

这将为您提供一个介于 0 和 1 之间的值(假设currentTime介于 0 和 之间totalTime),这应该会导致 和 之间的平滑start过渡end

于 2012-04-27T12:20:32.107 回答