基于速度和角度的矢量计算

Vectors calculation based on speed and angles

我很难将矢量知识应用于实际情况:我正在根据 this 论文为船舶(不是预测器)实施近距离碰撞检测算法。我的数据是 location (x,y), course (从北的角度), speed 对于每艘船(假设只有船 A 和 B)。

我需要的三个分量是:船与船之间的相对速度、平行于航向的单位向量、垂直于相对速度的单位向量(整体公式见第四章)。第一个公式是在论文中给出的,而接下来的两个是我从数学书上得到的:

1) relative velocity V(BA) = C(B) - C(A) (all vectors; within brackets -> subscript)

我假设 C 表示航向(这是一个角度)。根据我的理解,相对速度是随时间的距离测量的,而矢量具有大小(速度?)和方向(路线?)。

2) unit vector = vector / magnitude
3) perpendicular vector = any vector <=> dot product = 0

因此我的问题是:如何使用我拥有的数据(即速度、路线、位置)来计算这些方程式?

关于向量,唯一想到的计算向量是使用两个点(所以 2 个 x,y 对),但是在这种情况下这看起来很奇怪。

假设您的坐标为 x(水平,从西到东时为正)和 y(垂直,从南到北时为正),速度 s 和每艘船的航向 c(相对于北方的角度,顺时针方向)。

您可以获得速度的笛卡尔分量 vx 和 vy,方法是:

vy = scos(c)

vx = ssin(c)

然后就可以add or subtract the vectors term-wise随意