Иллюстрированный самоучитель по MatLab

Основные средства анимации. Вращение фигуры – логотипа MATLAB.

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

Отметим кратко основные команды, реализующие анимацию в системе MATLAB:

  • capture – захват видеоизображения;
  • getframe – создание кадра для анимации;
  • moviein – выполнение анимации;
  • rotate – вращение фигуры;
  • frame2im – преобразование кадра в графический образ;
  • im2frame – преобразование графического образа в кадр.

Применение некоторых из этих команд мы рассмотрим далее на конкретных примерах. К сожалению, серьезные задачи анимации обычно требуют применения программных средств – главным образом циклов. Мы рассмотрим их далее, но представляется, что читатели знакомы с понятием циклов, так что приведенные примеры не будут слишком сложны. В крайнем случае, оставьте их разбор до знакомства с основами программирования в системе MATLAB (урок 20).

Вращение фигуры – логотипа MATLAB

Рассмотрим вначале не очень сложный пример вращения сложной трехмерной поверхности – логотипа системы MATLAB, который представлен файлами logo.m и logo.mat. Ниже представлен фрагмент программы, обеспечивающий вращение этой поверхности (фигуры) относительно осей системы координат:

if ~exist('MovieGUIFlag') .figNumber=0; end;
load logo
h=surfl(L.source);
colormap(M);
ax=[7 52 7 52 - . 5.8]:
axis(ax);
axis on:
shading interp;
m=moviein(25):
for n=l:25.
rotate(h.[0 90],15.[21 21 0]);
h=surfl(get(h.'XData'),get(h.'YData').
get(h.'ZData'),source);
axis(ax);
axis on;
shading interp;
m(:,n)=mvframe(figNumber,24); end;
mvstoretfigNumber.m);

Эта программа имеет два блока: в первом задается исходная функция и ее образ, а во втором (с циклом for) выполняется создание кадров и их последовательное воспроизведение, создающее эффект анимации. На рис. 7.3 показан стоп-кадр полученной анимации.

Иллюстрированный самоучитель по MatLab › Специальная графика › Основные средства анимации. Вращение фигуры – логотипа MATLAB.
Рис. 7.3. Стоп-кадр программы, обеспечивающей вращение фигуры – логотипа MATLAB

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.