3

大约 2 个月前我问了这个问题,但没有一个答案足够有用。所以我再试一次。我认为这是我的错,描述得不够好。所以让我们再试一次。


(来源:bja888.com

这是我要完成的工作的粗略想法。
目标是从 T 点发射弹丸,拦截 R 点所代表的物体。
已知:

  1. 对象 R 的位置
  2. 方向物体 R 正在行进
  3. 物体 R 的移动速度
  4. 物体 T 的位置
  5. 物体 T 行进的速度

我正在寻找应该发送对象 T 的方向,从而找到它们将发生碰撞的位置。任意一个。

例如:如果...

  1. R的位置是(1,5)
  2. R 以 45 度角行进(相对于 d)
  3. R 以每秒 1 个单位的速度行驶
  4. T 位于 (1,1)
  5. T 也以每秒 1 个单位的速度移动


(来源:bja888.com

L 使碰撞的位置在 (3,3)

4

2 回答 2

1

有无数种可能性。考虑从点 R 和 T 开始的一系列同心圆,表示每个圆可以在增加的时间中移动的距离。圆相交的地方是碰撞点,碰撞点和 T 之间的向量是 T 在那个特定时刻应该瞄准的地方。如果您正在寻找最短路径,则需要获取 R 路径的法线并通过计算 T 穿越此距离所需的时间在适当的时间触发 T,以便它与 R 同时到达。

于 2010-01-27T06:20:15.450 回答
0

假设没有空气摩擦、重力、外力、近光速导弹、违反物理定律等。

假设最初R = ( x , y ) 和T = (0, 0)。(如果T不在原点,请更改坐标系)。

假设T的速度是恒定的 (cos θ , sin θ ),其中θ未知但不依赖于时间。(如果速度不是 1,则更改您的坐标系或时间单位。)

假设R的速度是恒定的 ( v , 0)。(如果速度不在水平方向,请更改坐标系。)

假设在时间t两个物体发生碰撞。所以我们有 2 个方程和 2 个未知数:

  • t cos θ = x + vt
  • t sin θ = y

很明显

  • t 2 = ( x + vt ) 2 + y 2

求解这个二次方程得到t。将其代入y方程得到θ。QED。

于 2010-01-27T06:38:02.097 回答