一般来说,matlab制作动画有四种方式。
第一 、以质点运动轨迹的方式显示
使用comet、comet3函数,前者是二维,后者是三维
comet(y)显示质点绕向量y,comet(x,y)显示质点绕向量y与x,comet(x,y,p),其中为轨迹尾巴的长度
以comet(x,y)为例,
显示平抛运动
vx = 40;
t = 0:0.001:10;
x = vx*t;
y = -9.8*t.^2/2;
comet(x,y)
显示导弹发射
显示导弹发射
vx = 100*cos(1/4*pi);
vy = 100*sin(1/4*pi);
t = 0:0.001:15;
x = vx*t;
y = vy*t-9.8*t.^2/2;
comet(x,y)
匀速圆周运动
sita = 0:0.0001:2*pi;
r = 10;
x=r*cos(sita);
y=r*sin(sita);
comet(x,y)
comet3与comet的用法相类似,可以在帮助文件里的例子
t = -10*pi:pi/250:10*pi;
comet3((cos(2*t).^2).*sin(t),(sin(2*t).^2).*cos(t),t)
第二、以电影播放的方式显示
保存想要产生动画的图片,存储为一系列各种类型的二维、三维图,再像放电影的方式按次序播放出来。步骤由getframe函数将当前的图片抓取为电影的画面,再由movie函数将动画显示出来。
如:
[x,y] = meshgrid([-1.05:.2:3.75]);
z = x.*exp(-x.^2-y.^2);
axis tight;
set(gca,'nextplot','replac