【问题标题】:Distance calculating algorithm for an app应用程序的距离计算算法
【发布时间】:2014-06-16 15:15:43
【问题描述】:

我正在尝试为我正在开发的三年级学生的几何游戏应用程序计算距离。基本思想是用户使用方向输入方向以及他想在每个方向上走多长时间。(例如输入:右(弧度),行进a米,左(弧度),行进b米)。

所以,现在我的应用程序将了解用户是否可以回到起点以及他离家多远。

到目前为止,我已经能够继续这个逻辑here。我想知道是否有其他方法可以做到这一点?谢谢!

【问题讨论】:

  • 你不能把距离加起来吗?或者您是否试图从初始起点找到您的位移?
  • 抱歉,增加距离对我有什么帮助?用户将以三角形形式行驶。
  • 我很困惑 - 你在这方面做了多少?您说您正在处理另一个问题中找到的逻辑 - 该逻辑对您有用吗?
  • 所以您正在寻找距离起点有多远?这就是位移。
  • 是的,我正在寻找位移。

标签: java geometry


【解决方案1】:

你可以适当地使用三年级几何来做到这一点。

当您使用列出的命令时,您正在创建一个向量。如果您存储 dirxy,您可以使用简单的 sin 和 cosin 来确定您的结束位置。

dir+=rad
x+=cosin(dir)
y+=sin(dir)

如果你已经保存了你的起始位置,你可以使用勾股定理来计算离家的位移!

public double distance (int x, int y){
    int xdist = x-startx;
    int ydist = y-starty;

    int squarex = xdist*xdist
    int squarey = ydist*ydist

    return Math.sqrt((double)(squarex+squarey));
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多