Math 到十字路口的最短路线

Math 到十字路口的最短路线,math,vector,collision,Math,Vector,Collision,大约两个月前我问过这个问题,但发现没有一个答案足够有用。所以我再给它一次机会。我想这是我的错,描述得不够好。让我们再试一次 (来源:) 这里是我试图完成的一个粗略的想法 目标是从T点发射射弹,拦截R点代表的目标。 众所周知: 对象R的位置 物体R运动的方向 物体R移动的速度 对象T的位置 物体T移动的速度 我在寻找物体T应该被发送的方向,从而找到它们碰撞的位置。任何一个 例如:如果 R的位置为(1,5) R以45度角移动(相对于d) R以每秒1个单位的速度移动 T位于(1,1) T也以每秒1个

大约两个月前我问过这个问题,但发现没有一个答案足够有用。所以我再给它一次机会。我想这是我的错,描述得不够好。让我们再试一次


(来源:)

这里是我试图完成的一个粗略的想法
目标是从T点发射射弹,拦截R点代表的目标。
众所周知:

  • 对象R的位置
  • 物体R运动的方向
  • 物体R移动的速度
  • 对象T的位置
  • 物体T移动的速度
  • 我在寻找物体T应该被发送的方向,从而找到它们碰撞的位置。任何一个

    例如:如果

  • R的位置为(1,5)
  • R以45度角移动(相对于d)
  • R以每秒1个单位的速度移动
  • T位于(1,1)
  • T也以每秒1个单位的速度移动

  • (来源:)


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

    有无限多的可能性。考虑从点R和T的同心圆系列,代表每一个可以在增加的时间行进的距离。圆相交的地方是碰撞点,碰撞点和T之间的向量是T在特定时刻应该瞄准的地方。如果你在寻找最短路径,你需要得到垂直于R的路径,并通过计算T穿过该距离所需的时间,在适当的时间发射T,使其与R同时到达。

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

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

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

    假设R的速度不变(v,0)。(如果速度不沿水平线,请更改坐标系。)

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

    • t cosθ=x+vt
    • t sinθ=y
    很明显

    • t2=(x+vt)2+y2

    解这个二次方程得到t。把它插入y方程得到θ。QED.

    你在国防部工作,是吗?你在研制自动瞄准炮塔,是吗?你杀人,不是吗?;-)同样的概念。但对于一个游戏来说,不能直线旅行吗?是的。然而,我正在考虑增加一个寻找射弹的选项。我还需要记住,R可能比T快。当你开始寻找射弹时,你需要掌握“追踪曲线”。T的速度是固定的(假设5),因此最多有2种可能性。一个猎鸭人用猎枪射击一只鸭子可以在很长的时间内射击,即使射击速度不受影响,对吗?或者你假设R和T必须同时发射?我只看到R的速度。哪里考虑到T的速度?@Jacks:定义为1。(如果速度不是1,请更改坐标系或时间单位。)以下是我得到的二次曲线。。。问题是,如果R的速度是1单位/秒,它总是试图除以0。我做错什么了吗?@Jacks:如果v=1,你得到0/0。让它成为一个特例。