exponenta event banner

playAnimation

Воспроизведение объектов анимации в окне фигуры MATLAB

Описание

пример

playAnimation воспроизводит анимационные объекты в окне фигуры MATLAB ®. Объекты анимации должны быть созданы с помощью fanimator функция.

По умолчанию переменная t = sym('t') - параметр времени объектов анимации. playAnimation воспроизводит анимацию с 10 кадрами на единичный интервал t в пределах диапазона t от 0 до 10.

пример

playAnimation(fig) воспроизводит анимационные объекты на рисунке fig.

пример

playAnimation(___,Name,Value) воспроизводит объекты анимации с указанным Name,Value аргументы пары. Используйте эту опцию с любой из комбинаций входных аргументов в предыдущих синтаксисах.

Примеры

свернуть все

Сначала создайте анимационный объект движущегося круга с помощью fanimator.

Создайте две символьные переменные, t и x. Переменная t определяет параметр времени анимации. Использовать t для установки центра окружности в (t,1) и x для параметризации периметра окружности в пределах диапазона [-pi pi]. Задайте для осей X и Y одинаковую длину.

syms t x
fanimator(@fplot,cos(x)+t,sin(x)+1,[-pi pi])
axis equal

Далее введите команду playAnimation для воспроизведения анимации.

По умолчанию playAnimation воспроизводит анимацию с 10 сгенерированными кадрами в единицу времени в диапазоне t от 0 до 10.

Создайте две символьные переменные, t и x. Переменная t определяет параметр времени анимации.

syms t x

Создание объекта анимации круга с помощью fanimator. Использовать t для установки центра окружности в (t,1) и x для параметризации периметра окружности в пределах диапазона [-pi pi]. Задайте для осей X и Y одинаковую длину.

fanimator(@fplot,cos(x)+t,sin(x)+1,[-pi pi])
axis equal

Добавление фрагмента текста для подсчета прошедшего времени с помощью text функция. Использовать num2str для преобразования параметра времени в строку.

hold on
fanimator(@(t) text(9,3,"Timer: "+num2str(t,2)))
hold off

По умолчанию playAnimation воспроизводит анимацию с 10 сгенерированными кадрами в единицу времени в диапазоне t от 0 до 10. Измените диапазон временного параметра на [4 8] с использованием 'AnimationRange' собственность. Измените частоту кадров в единицу времени на 4 с помощью 'FrameRate' собственность. Воспроизведите анимацию на текущем рисунке, введя следующую команду.

playAnimation(gcf,'AnimationRange',[4 8],'FrameRate',4)

Создайте рисунок пользовательского интерфейса. Укажите оси пользовательского интерфейса фигуры.

fig = uifigure;
ax = uiaxes(fig);

Figure contains an axes. The axes is empty.

Добавление объекта анимации к осям пользовательского интерфейса с помощью fanimator. Создайте две символьные переменные, x и t. Постройте график кривой, которая растет экспоненциально как функция времени t в пределах интервала [0 3].

syms x t;
fanimator(ax,@fplot,exp(x),[0 t],'r','AnimationRange',[0 3])

Figure contains an axes. The axes contains an object of type functionline.

Воспроизведение анимации на рисунке пользовательского интерфейса fig путем ввода команды playAnimation(fig). Кроме того, можно использовать команду playAnimation(ax.Parent).

Copyright 2018 The MathWorks, Inc.

Входные аргументы

свернуть все

Целевой показатель, указанный как Figure объект. Для получения дополнительной информации о Figure объекты, см. figure.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Backwards',true,'FrameRate',25

Диапазон параметра времени анимации, заданный как двухэлементный вектор строки. Эти два элемента должны быть реальными значениями, которые увеличиваются.

Пример: [-2 4.5]

Частота кадров, заданная как положительное значение. Частота кадров определяет количество кадров в единицу времени при воспроизведении объектов анимации.

Пример: 30

Обратный выбор, определенный как (булево) логическое значение. При указании опции trueзатем функция воспроизводит анимацию назад.

Пример: true

Коэффициент скорости, заданный как действительное ненулевое значение. Коэффициент скорости устанавливает отношение одного единичного интервала параметра времени анимации к одной секунде тактового времени.

  • Если задано отрицательное значение для 'SpeedFactor' и сохранить значение по умолчанию 0 (false) для 'Backwards' затем функция воспроизводит анимацию в обратном направлении с заданным коэффициентом скорости. Например, playAnimation('SpeedFactor',-1) запускает ту же анимацию, что и playAnimation('Backwards',true).

  • Если задано нулевое значение для 'SpeedFactor', то playAnimation('SpeedFactor',0) запускает неподвижный кадр бесконечно и не воспроизводит никакой анимации.

Пример: 2

Совет

  • При создании графика с помощью функции печати, например fplotMATLAB создает ряд графических объектов. Затем можно анимировать определенное свойство графических объектов с помощью fanimator и playAnimation функции. Обратите внимание, что некоторые функции, такие как title и xlabelсоздайте текстовые объекты, которые нельзя анимировать. Вместо этого используйте text для создания текстовых объектов, которые можно анимировать.

Представлен в R2019a