Моделирование в MATLAB/Simulink и SCILAB/Scicos - page 83

81
y=cos(k*x-w*t(1))+cos(x-t(1));
% Вычисление границ рисунка
axlim = [min(x) max(x) min(y) max(y)];
figure
% Сохранение дескриптора выводимого объекта
lh = line(x,y);
% Задание цвета кривой и выбор границ
set(lh,'color','r');
axis(axlim);
% Выбор режима стирания
set(lh,'erasemode','xor');
% Начало цикла анимации
for i = 2:n
% Пересчет координат кривой
y=cos(k*x-w*t(i))+cos(x-t(i));
% Обновление координат линии, изображающей амплитуду
% волны с помощью обновления у объекта (линии)
% с дескриптором lhсвойства ’XData’ (замена
% x-координат на новые значения) и аналогичные
% действия с y-координатами. Это стандартный
% способ обновления координат точек для анимации.
% Самый главный момент - замена координат
set(lh,'XData',x,'YData',y);
drawnow;
end
Аналогичным образом можно создавать любые движущиеся графики.
1...,73,74,75,76,77,78,79,80,81,82 84,85,86,87,88,89,90,91,92,93,...286
Powered by FlippingBook