-1

我已经按照本教程(包括速度和多线程)来了解如何在 android 中移动图像,到目前为止一切都很好。但是我想知道如何将图像移动一圈?

我整天都在修改 Droid 类中的 update() 方法……但无济于事。

public void update() {
        if (!touched) {

            x += (speed.getXv() * speed.getxDirection()); 
            y += (speed.getYv() * speed.getyDirection());

} }

任何帮助我将永远感激不尽。提前谢谢你。

4

1 回答 1

1

如果你想保持速度的概念,你需要改变速度矢量,改变它的方向,但保持它的大小,在每个时间间隔都以相等的度数。您必须确保定期调用更新函数。像这样的东西应该工作:

public void update()
{
    r = rFromXY(speed);
    t = tFromXY(speed);

    t += turningSpeed;

    speed.setXv(xFromPolar(r,t));
    speed.setYv(yFromPolar(r,t));

    if (!touched)
    {
        x += (speed.getXv() * speed.getxDirection()); 
        y += (speed.getYv() * speed.getyDirection());
    }
}

aFromB 函数在极坐标和笛卡尔坐标之间转换的地方。但是如果你想写任何严肃的东西,你应该研究一下物理引擎

于 2013-08-06T17:44:15.320 回答