Animate Graphics Object

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

Постройте график круга и установите пределы по осям так, чтобы модули данных были тем же самым в обоих направлениях.

theta = linspace(-pi,pi);
xc = cos(theta);
yc = -sin(theta);
plot(xc,yc);
axis equal

Используйте функцию area, чтобы чертить плоский треугольник. Затем измените значение одной из треугольных вершин с помощью (x, y) координаты круга. Измените значение в цикле, чтобы создать анимацию. Используйте drawnow или команду drawnow limitrate, чтобы отобразить обновления после каждой итерации. drawnow limitrate является самым быстрым, но он не может чертить каждый кадр на экране.

xt = [-1 0 1 -1];
yt = [0 0 0 0];
hold on
t = area(xt,yt); % initial flat triangle
hold off
for j = 1:length(theta)-10
    xt(2) = xc(j); % determine new vertex value
    yt(2) = yc(j);
    t.XData = xt; % update data properties
    t.YData = yt;
    drawnow limitrate % display updates
end

Анимация показывает треугольное цикличное выполнение вокруг внутренней части круга.

Copyright 2015 The MathWorks, Inc.

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

| | | |

Связанные примеры

Больше о

Была ли эта тема полезной?