Навигационные дорожки наиболее полезны при графическом отображении. Традиционно навигатор идентифицирует и графически строит путевые точки на проекции Mercator, а затем соединяет их прямолинейной линией, что на этой проекции приводит к трассам линии гребня. В предыдущем примере путевые точки были выбраны для аппроксимации большого маршрута круга, но их можно выбрать по целому ряду других причин.
Допустим, после прибытия на мыс Сент-Винсент ваш танкер должен проехать по Гибралтарскому проливу и затем отправиться в Порт-Саид, северную конечную станцию Суэцкого канала. В шкалах Средиземного моря следование по большим круговым путям не вызывает особой озабоченности по сравнению с обеспечением безопасного транзита многих проливов и проходов. Навигатор выбирает соответствующие путевые точки и строит их графики.
Чтобы выполнить это с помощью функций Mapping Toolbox™, можно отобразить оси карты с проекцией Mercator, выбрать соответствующие пределы широты и долготы карты, чтобы изолировать интересующую область, построить график данных о береговой линии и интерактивно выбрать путевые точки с inputm
функция. track
функция сгенерирует точки для соединения этих путевых точек, которые затем могут отображаться с plotm
.
Для рисунка предположим, что путевые точки известны (или были собраны с помощью inputm
). Чтобы узнать об использовании inputm
, см. Выбор местоположений в интерактивном режиме, или inputm
на страницах с описанием Mapping Toolbox.
waypoints = [36 -5; 36 -2; 38 5; 38 11; 35 13; 33 30; 31.5 32]
waypoints = 36.0000 -5.0000 36.0000 -2.0000 38.0000 5.0000 38.0000 11.0000 35.0000 13.0000 33.0000 30.0000 31.5000 32.0000
load coastlines axesm('MapProjection','mercator',... 'MapLatLimit',[30 47],'MapLonLimit',[-10 37]) framem plotm(coastlat,coastlon) [lttrk,lntrk] = track(waypoints); plotm(lttrk,lntrk,'r')
Хотя эти сегменты дорожки являются прямыми линиями на проекции Меркатора, они являются кривыми на других:
Такие сегменты дорожки называются ногами. Каждая из этих ног может быть описана в терминах курса и расстояния. Функция legs
будет принимать путевые точки в формате навигационной дорожки и возвращать курс и расстояние, необходимое для каждой ноги. Помните, порядок точек в этом формате определяет направление движения. Поэтому курсы вычисляются от каждой путевой точки до ее преемника, а не наоборот.
[courses,distances] = legs(waypoints)
courses = 90.0000 70.3132 90.0000 151.8186 98.0776 131.5684 distances = 145.6231 356.2117 283.6839 204.2073 854.0092 135.6415
Поскольку это навигационная функция, курсы все в степенях, и расстояния в морских милях. С этих расстояний могут быть вычислены скорости, необходимые для прибытия в Порт-Саид в заданное время. Движение в южном направлении допускается к входу в канал только один раз в день, поэтому эта информация может быть экономически значимой, поскольку излишне высокие скорости могут привести к высоким затратам топлива.