用matlab制作简单仿真动画

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用matlab制作简单仿真动画,并生成.avi格式的电影文件

MATALB知识点2008-05-01 13:17:54 阅读152 评论0 字号:大中小订阅

第一种形式:利用for循环,在一定时间内控制图形窗口图像的显示,产生一段动态的演示过程:

如下:

set(gcf,'color','green');

grid on;

set(gca,'zlim',[-10,10]');

set(gca,'xlim',[-10,10]);

set(gca,'ylim',[-10,10]);

for i=1:10

set(gca,'view',[-i*3.75,3*i] );

pause(0.2);

end

第二种形式:利用moviein和movie函数,现将生成的动画存入一个由movien

函数定义的数组中,每一帧为数组的一个元素,最后用movie重复演示,movie后面的数字代表演示次数。

x=[-30:0.2:30];

y=[-30:0.2:30];

[x,y]=meshgrid(x,y);

n=5;

M = moviein(n);

for i=1:n

z=sin(sqrt(2*(x).^2+2*(y).^2)-2*pi*i/10);

zz=plot3(x,y,z,'parent',gca);

mesh(x,y,z);

grid on;

colormap([0,0.9,0.5]);

light('position',[1,1,2],'style','local','color','white');

material([0.5,0.4,0.3,10,0.3]);

set(gca,'zlim',[-10,10]');

M(i)=getframe(gca);

end

movie(M,20)

创建电影剪辑文件,并存储起来,如下:

aviobj=avifile('文件名.avi','fps',3);%定义一个avi文件,

%AVIOBJ = AVIFILE(FILENAME,'PropertyName',VALUE,'PropertyName',VALUE,...)

%各属性详细说明见matlab帮助

for i=1:n

%在当前窗体上生成一帧图像

frame=getframe(gca); %获得一帧图像

aviobj=addframe(aviobj,frame);%并加到电影剪辑文件中

end

aviobj=close(aviobj);%关闭文件,结束数值仿真模拟过程。

用matlab制作简单仿真动画,并生成.avi格式的电影文件MATALB知识点2008-05-01 13:17:54 阅读152 评论0 字号:大中小订阅

第一种形式:利用for循环,在一定时间内控制图形窗口图像的显示,产生一段动态的演示过程:

如下:

set(gcf,'color','green');

grid on;

set(gca,'zlim',[-10,10]');

set(gca,'xlim',[-10,10]);

set(gca,'ylim',[-10,10]);

for i=1:10

set(gca,'view',[-i*3.75,3*i] );

pause(0.2);

end

第二种形式:利用moviein和movie函数,现将生成的动画存入一个由movien

函数定义的数组中,每一帧为数组的一个元素,最后用movie重复演示,movie后面的数字代表演示次数。

x=[-30:0.2:30];

y=[-30:0.2:30];

[x,y]=meshgrid(x,y);

n=5;

M = moviein(n);

for i=1:n

z=sin(sqrt(2*(x).^2+2*(y).^2)-2*pi*i/10);

zz=plot3(x,y,z,'parent',gca);

mesh(x,y,z);

grid on;

colormap([0,0.9,0.5]);

light('position',[1,1,2],'style','local','color','white');

material([0.5,0.4,0.3,10,0.3]);

set(gca,'zlim',[-10,10]');

M(i)=getframe(gca);

end

movie(M,20)

创建电影剪辑文件,并存储起来,如下:

aviobj=avifile('文件名.avi','fps',3);%定义一个avi文件,

%AVIOBJ = AVIFILE(FILENAME,'PropertyName',VALUE,'PropertyName',VALUE,...) %各属性详细说明见matlab帮助

for i=1:n

%在当前窗体上生成一帧图像

frame=getframe(gca); %获得一帧图像

aviobj=addframe(aviobj,frame);%并加到电影剪辑文件中

end

aviobj=close(aviobj);%关闭文件,结束数值仿真模拟过程。

相关文档
最新文档