gcwaypts

Равномерно распределенный waypoints вдоль большого круга

Синтаксис

[lat,lon] = gcwaypts(lat1,lon1,lat2,lon2)
[lat,lon] = gcwaypts(lat1,lon1,lat2,lon2,nlegs)
pts = gcwaypts(lat1,lon1,lat2,lon2...)

Описание

[lat,lon] = gcwaypts(lat1,lon1,lat2,lon2) возвращает координаты равномерно распределенных точек вдоль большого кругового пути, соединяющего две конечных точки, (lat1,lon1) и (lat2,lon2).

[lat,lon] = gcwaypts(lat1,lon1,lat2,lon2,nlegs) задает количество участков дорожки равной длины, чтобы вычислить. nlegs+1 выходные точки возвращены, поскольку итоговая конечная точка требуется. Количество по умолчанию участков равняется 10.

pts = gcwaypts(lat1,lon1,lat2,lon2...) упаковывает выходные параметры, которые являются в противном случае 2D вектор-столбцами в матрицу 2D столбца формы  [latitude longitude]. Этот формат для последовательного waypoints вдоль навигационной дорожки называется навигационным форматом дорожки в этом руководстве. Смотрите navigational track format страница с описанием в этом разделе для получения дополнительной информации.

Фон

Это - навигационная функция. Это принимает, что все широты и долготы в градусах.

В навигационной практике большие круговые пути часто аппроксимируются сегментами локсодромы. Это сделано, чтобы прибыть обоснованно близко к кратчайшему расстоянию между точками, не требуя изменений курса слишком часто. gcwaypts функция обеспечивает легкие средние значения нахождения waypoints вдоль большого кругового пути, который может служить конечными точками для сегментов локсодромы (участки дорожки).

Примеры

свернуть все

Предположите, что вы владеете парусной яхтой и планируете путешествие от Северной Точки, Барбадос (13,33 ° N, 59.62°W), в Брест, Франция (48.36°N, 4.49°W). Разделите дорожку на три сегмента равной длины.

figure('color','w');
ha = axesm('mapproj','mercator',...
    'maplatlim',[10 55],'maplonlim',[-80 10],...
    'MLineLocation',15,'PLineLocation',15);
axis off, gridm on, framem on;
% Load coastline data and plot it in the figure.
load coastlines;
hg = geoshow(coastlat,coastlon,'displaytype','line','color','b');
% Define point locations for Barbados and Brest
barbados = [13.33 -59.62];
brest = [48.36 -4.49];
% Calculate the waypoints along the path.
[l,g] = gcwaypts(barbados(1),barbados(2),brest(1),brest(2),3);
geoshow(l,g,'displaytype','line','color','r',...
    'markeredgecolor','r','markerfacecolor','r','marker','o');
geoshow(barbados(1),barbados(2),'DisplayType','point',...
    'markeredgecolor','k','markerfacecolor','k','marker','o')
geoshow(brest(1),brest(2),'DisplayType','point',...
    'markeredgecolor','k','markerfacecolor','k','marker','o')

Смотрите также

| | |

Представлено до R2006a