我目前正在编写小行星,以便在我的计算机科学课程中获得额外的学分,遵循一个非常宽松的指南,提供一些入门代码。我有一艘船,我可以使用按键来改变它的位置。起动器代码提供了一种基于Point位置绘制船舶的方法。然后我得到了这个
public void accelerate(double acceleration) {
pull.x += (acceleration * Math.cos(Math.toRadians(rotation)));
pull.y += (acceleration * Math.cos(Math.toRadians(rotation)));
}
我应该如何实施这个位置?我可以增加position.x和position.y,但我应该如何使用这种方法呢?另外,我可以实现车削加速吗?有一个可变的旋转,应该是0-360。
答案 0 :(得分:1)
我不确定如何在不看到更多代码的情况下回答这个问题,但请确保您了解位置,速度和加速度的相关性。随着时间的推移 t 的加速度等于速度的导数(dv / dt)。速度等于位置的导数(dx / dt)。它还与集成相反。加速度和速度是矢量,意味着它们具有幅度和方向。您需要根据速度更改位置,并根据加速度更改速度。这有帮助吗?