好吧,如果你要去Vn north和Ve East你的速度矢量是
V = (Ve, Vn)
Run Code Online (Sandbox Code Playgroud)
如果你测量你的航向为轴承,则行驶方向为b,顺时针方向为北方
F = (sin(H), cos(H))
Run Code Online (Sandbox Code Playgroud)
从这里我们也可以构造指向右边的向量
R = (cos(H), -sin(H))
Run Code Online (Sandbox Code Playgroud)
其中H是转换为弧度的标题
H = b*PI/180.0
Run Code Online (Sandbox Code Playgroud)
然后你面向的方向的速度是speedForward = F.V(点积)即
speedForward = sin(H)*Ve + cos(H)*Vn
Run Code Online (Sandbox Code Playgroud)
同样,你右边的速度漂移是RV
speedRight = cos(H)*Ve -sin(H)*Vn
Run Code Online (Sandbox Code Playgroud)
很明显,前进速度是speedForward*F,类似于你正确的方向.
所以在你的例子中,V =(5,10)和F =(sqrt(3)/ 2,0.5)
你的前进速度是9.33英里每小时,你的右手漂移速度是-6.16英里每小时(即你以6.16英里/小时的速度向左漂移).幸运的是,在这些坐标中测量的速度与原始速度相同,所以看起来我们还可以.从图片上看,横向漂移的标志对我来说也是合理的.