movie

Проигрывайте зарегистрированные кадры фильма

Синтаксис

movie(M)
movie(M,n)
movie(M,n,fps)
movie(h,...)
movie(h,M,n,fps,loc)

Описание

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

movie(M) проигрывает фильм в матричном M однажды, с помощью текущей системы координат в качестве цели по умолчанию. Если вы хотите проигрывать фильм в фигуре вместо осей, задайте указатель фигуры (или gcf) в качестве первого аргумента: фильм (figure_handle,...)M должен быть массив кадров фильма (обычно от getframe).

movie(M,n) проигрывает фильм n \times. Если n отрицательно, каждый цикл показывают вперед затем назад. Если n вектор, первым элементом является число раз, чтобы проигрывать фильм, и остающиеся элементы составляют список систем координат, чтобы вопроизвести в фильме.

Например, если M имеет четыре системы координат затем n = [10 4 4 2 1] проигрывает фильм десять раз, и фильм состоит из системы координат 4 сопровождаемый системой координат 4 снова, сопровождаемый системой координат 2 и наконец структурируйте 1.

movie(M,n,fps) проигрывает фильм в fps кадры в секунду. Значение по умолчанию составляет 12 кадров в секунду. Компьютеры, которые не могут достигнуть заданной игры скорости максимально быстро.

movie(h,...) проигрывает фильм, сосредоточенный в фигуре или осях, идентифицированных указателем h. Определение фигуры или осей позволяет MATLAB® соответствовать фильму к доступному размеру.

movie(h,M,n,fps,loc) задает loc, четырехэлементный вектор местоположения, [x y 0 0], где левый нижний угол кадра фильма привязывается (только первые два элемента в векторе используются). Местоположение относительно левого нижнего угла фигуры или осей, заданных handle h и в модулях пикселей, независимо от Units объекта свойство.

Примеры

свернуть все

Используйте getframe функция в цикле, чтобы записать системы координат peaks функциональное вибрирование. Предварительно выделите массив, чтобы сохранить кадры фильма.

figure
Z = peaks;
surf(Z)
axis tight manual
ax = gca;
ax.NextPlot = 'replaceChildren';


loops = 40;
F(loops) = struct('cdata',[],'colormap',[]);
for j = 1:loops
    X = sin(j*pi/10)*Z;
    surf(X,Z)
    drawnow
    F(j) = getframe;
end

Чтобы проигрывать фильм два раза, используйте movie(F,2).

Советы

movie функционируйте использует размер фигуры по умолчанию 560 420 и не изменяет размер фигур, чтобы соответствовать фильмам большими или меньшими системами координат. Чтобы разместить другие форматы кадра, можно изменить размер фигуры, чтобы соответствовать фильму.

movie только принимает 8-битные фреймы изображения; это не принимает 16-битные полутоновые или 24-битные фреймы изображения истинного цвета.

Буферизация фильма помещает все системы координат в память. В результате на Microsoft® Windows® и возможно других платформах, длинный фильм (на порядке нескольких сотен систем координат) может исчерпать память, в зависимости от системных ресурсов. В таких случаях выпущено сообщение об ошибке:

??? Error using ==> movie 
Could not create movie frame

Можно прервать фильм путем ввода Ctrl-C.

movie не встроенная функция. Поэтому вы не можете вызвать movie использование builtin функция.

Ограничения со средством отображения на Windows Systems

Установка фигуры Renderer свойство к painters работает вокруг ограничений использования getframe с OpenGL средство отображения в некоторых системах Windows.

Представлено до R2006a