我的问题是:如何用matlab计算两组坐标之间的距离?
我有两个坐标,如N1 32.22 E1 15.09和N2 32.45 E2 15.55,通过命令[k b] = distance(N1, E1, N2, E2)
它给出了大圆弧和方位角,但我需要以米或公里为单位的距离。
答案 0 :(得分:-1)
您可以使用geodetic2ned()
函数以单位“公里”或“米”表示大地测量数据,但这需要Mapping Toolbox
。
现在检查以下代码:
pos1 = [32.22, 15.09];
pos2 = [32.45, 15.55];
h = 0; % // altitude
SPHEROID = referenceEllipsoid('wgs84', 'km'); % // Reference ellipsoid. You can enter 'km' or 'm'
[N, E] = geodetic2ned(pos1(1), pos1(2), h, pos2(1), pos2(2), h, SPHEROID);
distance = norm([N, E]);
这导致距离为50.2598
公里。