移动到所述点在半径范围内的点
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了移动到所述点在半径范围内的点相关的知识,希望对你有一定的参考价值。
就像免责声明一样,我是Python新手。
(这是在graphics.py中)
我在飞机上有两个点。一点“a”是围绕它的圆圈。目前他们看起来像这样:
假设点“a”正在一条轨迹上移动,该轨迹将导致圆圈触及另一点。我的目标是让一个点“a”开始向另一个点移动,一旦另一个点在围绕点“a”的圆圈范围内,有点像这种情况:
还应该注意,点“a”是唯一可以移动的点。
最终,我想要点触摸。
有没有办法让我这样做?我现在可以想到的一个可能的解决方案是将点“a”移动到另一个点所在的(x,y)坐标,但这意味着点“a”不会移动到另一个点,因为圆圈与另一个点接触。
任何和所有的帮助表示赞赏!
答案
这是一些伪代码
if (a.x-b.x)**2 + (a.y-b.y)**2 <= a.radius**2:
vec_a_b = b-a # or you can do this component wise
a.velocity = normalized(vec_a_b)*a.velocity.magnitude
这假设点a
有一个速度向量,它编码它当前进入的方向及其速度。
现在你可以用速度来移动a
:
a.x += a.velocity.x
a.y += a.velocity.y
以上是关于移动到所述点在半径范围内的点的主要内容,如果未能解决你的问题,请参考以下文章