Преобразование данных векторной карты в новое начало координат и ориентацию
[lat1,lon1] = rotatem(lat,lon,origin,'forward')
[lat1,lon1] = rotatem(lat,lon,origin,'inverse')
[lat1,lon1] = rotatem(lat,lon,origin,'forward',units)
[lat1,lon1] = rotatem(lat,lon,origin,'forward',units)
[lat1,lon1] = rotatem(lat,lon,origin,'forward') преобразует данные широты и долготы (lat и lonк новым координатам (lat1 и lon1) в системе координат, полученной в результате поворота под углом Эйлера, как указано origin. Вход origin является трех- (или двух-) вектором элементов, имеющим вид [latitude longitude orientation]. Широта и долгота - координаты точки в исходной системе, являющейся центром выходной системы. Ориентация представляет собой азимут от новой исходной точки до исходного Северного полюса в новой системе. Если origin имеет только два элемента, ориентация принимается равной 0 °. Это origin вектор может быть выводом putpole или newpole.
[lat1,lon1] = rotatem(lat,lon,origin,'inverse') преобразует данные широты и долготы (lat и lon) в системе координат, которая была преобразована поворотами угла Эйлера, указанными origin к их координатам (lat1 и lon1) в системе координат, из которой они были первоначально преобразованы. В некотором смысле это отменяет 'forward' процесс. Однако следует иметь в виду, что если данные повернуты вперед, а затем инвертированы, то окончательные данные могут не совпадать с исходными. Это происходит из-за округления и коллапса данных в исходной и промежуточной сингулярностях (полюсах).
[lat1,lon1] = rotatem(lat,lon,origin,'forward', и units)[lat1,lon1] = rotatem(lat,lon,origin,'forward', укажите угловые единицы данных, где units)units - любая распознаваемая единица измерения угла. Значение по умолчанию: 'radians'. Следует отметить, что это значение по умолчанию отличается от значения по умолчанию для большинства функций.
rotatem преобразует данные векторной карты в новую систему координат.
Аналитическое использование новых данных может быть реализовано совместно с newpole функция. Если выбранная точка является северным полюсом новой системы, то при создании новых векторных данных с помощью rotatemРасстояние каждой точки данных от этого нового северного полюса - это его новая колатитума (90 ° минус широта). Абсолютная разница в азимутах большого круга между каждой парой точек от их нового полюса такая же, как и разница в их новых долготах.
Каковы координаты Рио-де-Жанейро (23ºS,43ºW) в системе координат, в которой Нью-Йорк (41ºN,74ºW) сделан Северным полюсом? Используйте newpole функция, чтобы получить исходный вектор, связанный с помещением Нью-Йорка на полюс:
nylat = 41; nylon = -74;
riolat = -23; riolon = -43;
origin = newpole(nylat,nylon);
[riolat1,riolon1] = rotatem(riolat,riolon,origin,...
'forward','degrees')
riolat1 =
19.8247
riolon1 =
-149.7375
Что это значит? Во-первых, колатитура Рио в этой новой системе - расстояние от Нью-Йорка. Сравните расстояние между исходными точками и новой колатитудой:
dist = distance(nylat,nylon,riolat,riolon) dist = 70.1753 90-riolat1 ans = 70.1753