我有点A(0,0)和点b(0,100),我有一个X ms的过渡时间。我需要在给定的X ms时间内将对象从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()是我进行线性插值计算的方法。我似乎没有得到正确的计算。请帮忙
答案 0 :(得分:1)
您的线性插值计算是正确的,但将时间计算更改为:
float time= ((float)currentTime) / totalTime;
这将为您提供0到1之间的值(假设currentTime
介于0和totalTime
之间),这将导致start
和end
之间的平滑过渡