legs
航路点之间的航程与距离
语法
[course,dist] = legs(lat,lon)
[course,dist] = legs(lat,lon,method)
[course,dist] = legs(pts,___)
mat = legs(___)
说明
[course,dist] = legs(lat,lon) 返回导航航点之间的方位角 (course) 与距离 (dist),这些航点由列向量 lat 和 lon 指定。
[course,dist] = legs(lat,lon,method) 指定腿部特征的逻辑。若 method 为 'rh'(默认值),则 course 和 dist 将按恒向线方式计算。若 method 等于 'gc',则采用大圆计算法。
[course,dist] = legs(pts,___) 在单个两列矩阵 pts 中指定航点。
mat = legs(___) 将输出结果打包成单一的双列矩阵 mat。
这是一个导航函数。所有角度均以度为单位,所有距离均以海里为单位。轨迹段是指在航点之间航行的航线和距离。
示例
想象一架飞机从波士顿洛根国际机场(北纬 42.3º,西经 71º)起飞,飞往洛杉矶国际机场(北纬 34º,西经 118º)。飞行员计划提交一份飞行计划,要求飞机飞越芝加哥奥黑尔机场(北纬 42 度,西经 88 度)进行导航更新,同时在航程的两个航段中保持恒定航向。
那些标题是什么?腿有多长?
lat = [42.3; 42; 34];
long = [-71; -88; -118];
[course,dist] = legs(lat,long,'rh')
course =
268.6365
251.2724
dist =
1.0e+003 *
0.7569
1.4960起飞后,飞机应沿约 269º航向飞行 756 海里,随后转向 251º航向继续飞行 1495 海里。
不沿着航点间的最短航线飞行,会增加多少航程?沿着恒向线行驶
totalrh = sum(dist)
totalrh =
2.2530e+003对于大圆航线,
[coursegc,distgc] = legs(lat,long,'gc'); totalgc = sum(distgc)
totalgc =
2.2451e+003大圆航线仅缩短不到 0.5%。