基于速度和角度的矢量计算
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 = s
cos(c
)
vx = s
sin(c
)
我很难将矢量知识应用于实际情况:我正在根据 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 =
s
cos(c
)vx =
s
sin(c
)