play (Aero.FlightGearAnimation)

Анимируйте средство моделирования рейса FlightGear с помощью данный временные ряды положения/угла

Синтаксис

play(h)
h.play

Описание

play(h) и h.play анимируйте средство моделирования рейса FlightGear, использующее серийные данные требуемого времени в h. Данные временных рядов могут быть установлены в h при помощи свойства 'TimeseriesSource'.

Данные временных рядов, сохраненные в свойстве 'TimeseriesSource', интерпретирован согласно 'TimeseriesSourceType' свойство, которое может быть одним из:

'Timeseries'

MATLAB® данные временных рядов с шестью значениями во время:

latitude longitude altitude phi theta psi

Значения передискретизируются.

'StructureWithTime'

Simulink® struct со временем (например, корневой выходной порт Simulink, регистрирующий 'Structure with time'):

  • signals(1).values: latitude longitude altitude

  • signals(2).values: phi theta psi

Сигналы линейно интерполированы по сравнению со временем с помощью interp1.

'Array6DoF'Массив с двойной точностью в n строки и 7 столбцов для данных с 6 степенями свободы: time latitude longitude altitude phi theta psi. Если массив с двойной точностью 8 или больше столбцов находится в 'TimeseriesSource', первые 7 столбцов используются в качестве данных с 6 степенями свободы.
'Array3DoF'Массив с двойной точностью в n строки и 4 столбца для данных с 3 степенями свободы: time latitude altitude theta. Если массив с двойной точностью 5 или больше столбцов находится в 'TimeseriesSource', первые 4 столбца используются в качестве данных с 3 степенями свободы.
'Custom'Данные о положении и угле получены из 'TimeseriesSource' в настоящее время зарегистрированным 'TimeseriesReadFcn'.

Алгоритм продвижения времени, используемый play основан на кадрах анимации, считаемых метками деления:

ticks = ticks + 1;
time  = tstart + ticks*FramesPerSecond*TimeScaling;

где

TimeScalingЗадайте секунды данных анимации в секунду тактового стеной времени.
FramesPerSecondУкажите, что количество кадров в секунду раньше анимировало 'TimeseriesSource'.

Для 'TimeseriesReadFcn' по умолчанию методы, последняя проигрываемая система координат являются последней временной стоимостью.

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

Примечание

Если будет 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 метод поддерживает объекты Animation FlightGear с пользовательскими таймерами.

Ограничения

Следующее является ограничениями для TStart и TFinal значения:

  • TStart и TFinal mustBeNumeric.

  • TStart и TFinal не может быть Inf или NaN.

  • TFinal должен быть больше или быть равен TStart.

  • TFinal не может быть больше максимального Timeseries время.

  • TStart не может быть меньше минимального Timeseries время.

Примеры

Анимируйте средство моделирования рейса FlightGear с помощью данного '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)

Анимируйте средство моделирования рейса FlightGear с помощью пользовательского таймера, MyFGTimer.

h.play('MyFGTimer')

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

| |

Представленный в R2007a
Для просмотра документации необходимо авторизоваться на сайте