找到圆外的点

时间:2012-08-16 19:36:13

标签: c++ vector geometry points

我正在尝试创建一个函数,使我能够找到圆周上特定点周围的点。我搜索了网站,发现了一个问题,就是圈内的点数。

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

我被困在如何找到范围。任何帮助都会很棒。提前谢谢!

2 个答案:

答案 0 :(得分:0)

用于在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) ) )

答案 1 :(得分:0)

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

E.G:

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个单位内的位置(该函数将矩阵作为其参数)。