【问题标题】:Find points outside a circle查找圆外的点
【发布时间】:2015-03-22 23:48:11
【问题描述】:

我正在尝试创建一个函数,该函数可以让我找到圆周上特定点周围的点。我搜索了网站,发现了一个关于圆圈内部点的问题。

我已经创建了一个圆,该圆的点存储在一个向量中,即单元格。我还创建了一个包含 20 个点的病毒向量。我还创建了一个函数来检查其中一种病毒是否击中了细胞外部。我正在尝试在 C++ 中创建一个函数,该函数将检查攻击细胞的病毒,以查看病毒各个方向的两点范围内是否还有其他病毒。我想计算该范围内的所有病毒,然后将它们移动到同一位置的圆圈中。

我不知道如何找到范围。任何帮助都会很棒。提前致谢!

【问题讨论】:

  • 你需要知道如何求两点之间的距离吗?

标签: c++ vector geometry points


【解决方案1】:

一些用于查找 R 范围内的循环病毒的伪代码:

Let r=distance between two circular viruses
Let R=range to be checked

if r is less than R, increment virus counter.

Finding r is easy:
r =   square root of( square of( x(virus 1)-x(virus 2) ) + square of( y(virus 1)-y(virus 2) ) )

【讨论】:

    【解决方案2】:

    将数据存储在矩阵中可能更简单。

    例如:

    0 0 0 0 0
    0 1 0 1 0
    0 0 0 0 0
    0 1 0 0 0
    0 0 0 0 1
    

    1 表示“病毒”在该位置。

    然后您可以创建一个递归函数来查找病毒-细胞碰撞的 2 个单位内的位置(该函数将矩阵作为其参数)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-17
      • 2011-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-04
      • 2021-07-19
      相关资源
      最近更新 更多