Android - 抛物线运动

时间:2012-05-25 07:00:03

标签: android

我在表面视图中有一个移动物体,它从固定位置移动。

我需要将其设置为以抛物线方式移动..我的对象绘制就像使用x和y所以我做

不知道使用那个线程如何计算X和y plz的帮助?

1 个答案:

答案 0 :(得分:3)

基本公式是:

y = x ^ 2 + m

(m是x偏移量) (2可以是高于2的偶数,但现在使用2)

您的起始位置的坐标为y0,x0

所以你的第一个位置是:

y = x0^2 + y0

下一步计算你的x值

x = x0+(n*stepsize)

x0是你的初始x值(见上文)。 stepsize是每个步骤的像素偏移量(现在只需使用1) n是绘图循环中的当前步骤,如下所示:for(int n = 0; n< 100; n ++)

然后使用此x值计算您的y值

y = x^2 + y0

主要编辑:

所以我想到了另一种方法来做你想要做的事情,这更简单:

首先,您需要定义开始(x0 | y0)和结束(x1 | y1)坐标。 然后使用单独的公式计算动画期间的新位置。

计算距离

x0x1 = x1 - x0
y0y1 = y1 - y0

定义你想要多少个动画步骤(假设20个) 将距离偏离此值,并在每个动画步骤中将该步距添加到最后一个坐标。

现在,为了使整个事情成为一个抛物线,你必须至少在动作开始的时候才能分开距离而不是对数。但是在尝试之前请尝试前者。

这是一种更加数字化的方法 - 我希望它有所帮助。