我必须编写一种方法,以给定的速度将一个物体(例如圆圈)直线从一个坐标移动到另一个坐标。对象必须到达目标点并停止。速度与物体到达点的时间相关(例如,速度= 15等于时间= 15 ms )。如果有人能在这里帮我学数学,我会是个可怜虫。
发布于 2011-02-10 21:15:20
以恒定速度从点p0移动到点p1的插值公式是:
p(t) = p0*(1-t) + p1*t其中,t是缩放的时间,从开头的0到结尾的1不等,而p、p0和p1是(x,y)坐标对。因为Java没有内置的方法来编写插值公式,所以您只需将它并行地应用于x和y组件。结果是:
t = (time_now - start_time) / total_time;
x = x0*(1-t) + x1*t;
y = y0*(1-t) * y1*t;这是核心计算。要让对象移动,请执行以下步骤:
给出了
时间增量可以是由System.getTimeMillis()确定的规则的挂钟时间.
https://stackoverflow.com/questions/4962608
复制相似问题