Получите положение геодезической траектории в течение определенного времени
[
возвращает информацию о положении waypoint траектории в заданных шагах расчета. Если какой-либо шаг расчета вне длительности траектории, соответствующая информация о положении возвращена как position
,orientation
,velocity
,acceleration
,angularVelocity
,ecef2ref
] = lookupPose(traj
,sampleTimes
)NaN
.
[___] = lookupPose(
дополнительно позволяет вам задать формат traj
,sampleTimes
,coordinateSystem
)position
вывод .
geoTrajectory
и ищите положениеСоздайте geoTrajectory
со стартовым LLA в [15 15 0] и конечным LLA в [75 75 100]. Установите время полета на десять часов. Производите траекторию каждые 1000 секунд.
startLLA = [15 15 0];
endLLA = [75 75 100];
timeOfTravel = [0 3600*10];
sampleRate = 0.001;
trajectory = geoTrajectory([startLLA;endLLA],timeOfTravel,'SampleRate',sampleRate);
Выведите LLA waypoints траектории.
positionsLLA = startLLA; while ~isDone(trajectory) positionsLLA = [positionsLLA;trajectory()]; end positionsLLA
positionsLLA = 37×3
15.0000 15.0000 0
16.6667 16.6667 2.7778
18.3333 18.3333 5.5556
20.0000 20.0000 8.3333
21.6667 21.6667 11.1111
23.3333 23.3333 13.8889
25.0000 25.0000 16.6667
26.6667 26.6667 19.4444
28.3333 28.3333 22.2222
30.0000 30.0000 25.0000
⋮
Ищите Декартов waypoints траектории в системе координат ECEF при помощи lookupPose
функция.
sampleTimes = 0:1000:3600*10;
n = length(sampleTimes);
positionsCart = lookupPose(trajectory,sampleTimes,'ECEF');
Визуализируйте результаты в системе координат ECEF.
figure() km = 1000; plot3(positionsCart(1,1)/km,positionsCart(1,2)/km,positionsCart(1,3)/km, 'b*'); hold on; plot3(positionsCart(end,1)/km,positionsCart(end,2)/km,positionsCart(end,3)/km, 'bo'); plot3(positionsCart(:,1)/km,positionsCart(:,2)/km,positionsCart(:,3)/km,'b'); plot3([0 positionsCart(1,1)]/km,[0 positionsCart(1,2)]/km,[0 positionsCart(1,3)]/km,'k:'); plot3([0 positionsCart(end,1)]/km,[0 positionsCart(end,2)]/km,[0 positionsCart(end,3)]/km,'k:'); xlabel('x (km)'); ylabel('y (km)'); zlabel('z (km)'); legend('Start position','End position', 'Trajectory')
traj
— Геодезическая траекторияgeoTrajectory
объектГеодезическая траектория в виде geoTrajectory
объект.
sampleTimes
— Шаги расчетаШаги расчета в секундах в виде K - вектор элемента из неотрицательных скаляров.
coordinateSystem
— Система координат, чтобы сообщить о положениях'LLA'
(значение по умолчанию) | 'ECEF'
Система координат, чтобы сообщить о положениях в виде:
'LLA'
— Сообщите о позициях широты в градусах, долгота в градусах и высота выше ссылочного эллипсоида WGS84 в метрах.
'ECEF'
— Сообщите о позициях Декартовых координат в ECEF (Земля Фиксированная Земля В центре) координатная система координат в метрах.
.
position
— Положения в системе координат локальной ссылки (градус градуса m)Геодезические положения в системе координат локальной ссылки, возвращенной как K-by-3 матрица. K является количеством SampleTimes
.
Когда coordinateSystem
вход задан как 'LLA'
, эти три элемента в каждой строке представляют широту в градусах, долгота в градусах и высота выше ссылочного эллипсоида WGS84 в метрах геодезического waypoint.
Когда coordinateSystem
вход задан как 'ECEF'
, эти три элемента в каждой строке представляют Декартовы координаты положения в ECEF (Земля Фиксированная Земля В центре) координатная система координат в метрах.
Типы данных: double
orientation
— Ориентация в системе координат локальной ссылкиОриентация в системе координат локальной ссылки, возвращенной как K-by-1 quaternion
вектор-столбец или как 3 3 K действительным массивом, в котором каждая 3х3 матрица является матрицей вращения.
Каждая матрица кватерниона или вращения является вращением системы координат от системы координат локальной ссылки (NED или ENU) в waypoint к системе координат тела цели на траектории.
K является количеством SampleTimes
.
Типы данных: double
velocity
— Скорость в системе координат локальной ссылки (m/s)Скорость в системе координат локальной ссылки в метрах в секунду, возвращенный как M-by-3 матрица.
K задан SamplesPerFrame
свойство.
Типы данных: double
acceleration
— Ускорение в системе координат локальной ссылки (m/s2)Ускорение в системе координат локальной ссылки в метрах в секунду придало квадратную форму, возвращенный как M-by-3 матрица.
K является количеством SampleTimes
.
Типы данных: double
angularVelocity
— Скорость вращения в системе координат локальной ссылки (rad/s)Скорость вращения в системе координат локальной ссылки в радианах в секунду, возвращенный как K-by-3 матрица.
K является количеством SampleTimes
.
Типы данных: double
ecef2ref
— Ориентация системы координат относительно системы координат ECEFОриентация системы координат относительно ECEF (Земля Фиксированная Земля В центре) система координат, возвращенная как K-by-1 quaternion
вектор-столбец или как 3 3 K действительным массивом, в котором каждая 3х3 матрица является матрицей вращения.
Каждый кватернион или 3х3 матрица вращения являются вращением системы координат от системы координат ECEF до системы координат локальной ссылки (NED или ENU) в текущем положении траектории.
K является количеством SampleTimes
.
Типы данных: double
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.