【问题标题】:Calculating the angle to move at计算移动的角度
【发布时间】:2016-03-12 23:18:05
【问题描述】:

我想知道如何计算一个对象将行进到给定点的方向。因此,如果我在坐标 10,10 有一个球并且我给它一个坐标 15,15,它会知道向上和向右移动相同的距离(即 java y 坐标向上增加并向右移动相同的距离直到它到了那里)。但是如果我给同一个球 20,15 它不会在两个轴上均匀移动(即向上然后向右的距离)。如果我可以在int 值中输出,那就太好了。就像每个刻度向上移动的像素数和每个刻度移动的像素数一样。 (显然,这会有一个上限,所以它实际上只是调节其中一个变量以获得所需的课程)。

谢谢大家。

【问题讨论】:

  • 我认为您还应该展示您正在尝试编写的代码以及您面临的具体问题。
  • 我投票结束这个问题,因为它是关于初等数学而不是编程
  • Java y 坐标实际上是向下增加的。 DROY 编辑了帖子并将其更改为相反的方式。

标签: java game-physics


【解决方案1】:

atan2() 方法返回您需要移动的角度。例如:

double angle = Math.atan(end.y - start.y, end.x - start.x);

与所有 Java 三角函数一样,angle 将以弧度表示。

【讨论】:

    【解决方案2】:

    可以考虑使用Apache Commons Math library

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-05
      • 2019-11-10
      • 1970-01-01
      • 1970-01-01
      • 2014-11-18
      相关资源
      最近更新 更多