Анимация симулятора полета FleyGear с использованием заданного временного ряда положение/угол
play(h)
h.play
play(h) и h.play анимация симулятора полета FleyGear с использованием указанных временных рядов в h. Данные временных рядов могут быть установлены в h с помощью свойства 'TimeseriesSource'.
Данные временного ряда, хранящиеся в свойстве 'TimeseriesSource', интерпретируется в соответствии с 'TimeseriesSourceType' свойство, которое может быть одним из:
'Timeseries' | Данные временных рядов MATLAB ® с шестью значениями в раз:
Значения повторно дискретизируются. |
'StructureWithTime' | Структура Simulink ® со временем (например, регистрация исходящего порта корня Simulink)
Сигналы линейно интерполируются в зависимости от времени с использованием |
'Array6DoF' | Массив с двойной точностью в n строки и 7 столбцов для 6-DoF данных: time latitude longitude altitude phi theta psi. Если массив с двойной точностью из 8 или более столбцов находится в 'TimeseriesSource'первые 7 столбцов используются в качестве 6-DoF данных. |
'Array3DoF' | Массив с двойной точностью в n строки и 4 столбца для 3-DoF данных: time latitude altitude theta. Если массив с двойной точностью из 5 или более столбцов находится в 'TimeseriesSource'первые 4 столбца используются в качестве 3-DoF данных. |
'Custom' | Данные о положении и угле извлекаются из 'TimeseriesSource' зарегистрированным в настоящее время 'TimeseriesReadFcn'. |
Алгоритм продвижения по времени, используемый play основан на кадрах анимации, отсчитанных по засечкам:
ticks = ticks + 1; time = tstart + ticks*FramesPerSecond*TimeScaling;
где
TimeScaling | Укажите секунды данных анимации в секунду времени настенного времени. |
FramesPerSecond | Укажите количество кадров в секунду, используемых для анимации 'TimeseriesSource'. |
По умолчанию 'TimeseriesReadFcn' методы, последний воспроизведенный кадр является последним значением времени.
Время в секундах, значения положения находятся в тех же единицах, что и геометрическая модель, которая будет использоваться FlireGear (см. свойство 'GeometryModelName'), и все углы находятся в радианах. Возможным результатом использования неправильных блоков является досрочное прекращение работы симулятора полета FlireGear.
Примечание
При наличии 15% разницы между ожидаемым временным опережением и фактическим временным опережением этот метод генерирует следующее предупреждение:
TimerPeriod has been set to <value>. You may wish to modify the animation TimeScaling and FramesPerSecond properties to compensate for the millisecond limit of the TimerPeriod. See documentation for details.
play поддерживает объекты анимации FleyGear с пользовательскими таймерами.
Ниже приведены ограничения для TStart и TFinal значения:
TStart и TFinal должен быть числовым.
TStart и TFinal не может быть Inf или NaN.
TFinal должно быть больше или равно TStart.
TFinal не может быть больше максимального Timeseries время.
TStart не может быть меньше минимума Timeseries время.
Анимация симулятора полета FleyGear с использованием данного 'Array3DoF' данные временного ряда позиция/угол:
data = [86.2667 -2.13757034184404 7050.896596 -0.135186746141248;...
87.2833 -2.13753906554384 6872.545051 -0.117321084678936;...
88.2583 -2.13751089592972 6719.405713 -0.145815609299676;...
89.275 -2.13747984652232 6550.117118 -0.150635248762596;...
90.2667 -2.13744993157894 6385.05883 -0.143124782831999;...
91.275 -2.13742019116849 6220.358163 -0.147946202530756;...
92.275 -2.13739055547779 6056.906647 -0.167529704309343;...
93.2667 -2.13736104196014 5892.356118 -0.152547361677911;...
94.2583 -2.13733161570895 5728.201718 -0.161979312941906;...
95.2583 -2.13730231163081 5562.923808 -0.122276929636682;...
96.2583 -2.13727405475022 5406.736322 -0.160421658944379;...
97.2667 -2.1372440001805 5239.138477 -0.150591353731908;...
98.2583 -2.13721598764601 5082.78798 -0.147737722951605];
h = fganimation
h.TimeseriesSource = data
h.TimeseriesSourceType = 'Array3DoF'
play(h)
Анимация симулятора полета FlireGear с помощью пользовательского таймера, MyFGTimer.
h.play('MyFGTimer')