怎样用Matlab做动画演示

怎样用Matlab做动画演示,第1张

1利用moviein命令对内存进行初始化,创建一个最够大的矩阵,使其能够容纳基于当前坐标轴大小的一系列制定的图形(帧)moviein(n)可以创建一个足够大的n列矩阵。

2利用getframe命令生成每个帧。

3利用movie命令按照指定的速度和次数运行该动画,movie(M,n)可悔谈以播放由矩阵M所定义的画面n次,默认n时只播放一次。

演示山峰函数绕Z轴旋转的动画。

>>[X,Y,Z]=peaks(30)

>>surf(X,Y,Z)

>>axis([-3,3,-3,3,-10,10])

>>axis off

>吵前雹>shading interp

>>colormap(hot)

>>M=moviein(20)%建立一个20列的大矩阵

>>for i=1:20

view(-37.5+24*(i-1),30) %改变升帆视点

M(:,i)=getframe%将图形保存到M矩阵

end

>>movie(M,2) %播放画面2次

immovie函数可以利用多帧图粗滚像创建动画,具体用法如下:

1.mov=immovie(X,map)

利用多帧索引图像X,其颜色映射为map,来创建视频,返回视频结构数组mov关于视频结构数组的详细内容请参考getframe函数调用implay函数播放视频。

X包含多帧索引图像,且每帧图像具有相同大小和颜色映射。X是一个大小为m*n*1*k的数组,k是图像的总帧数。(关于索引图像,可以先将这十幅图转化为索引图像,例如如果是灰度图像,则用函数[X,map]=gray2ind(I,n)转化)

2.mov=immovie(RGB)

利用多帧真彩色图像RGB来创建视频,返回视频结构数组mov。

RGB包含多帧真彩色图像,所有图像具有相同的大小,汪袭RGB是一个大小为m*n*3*k的数组,k为图像的总困凳兄帧数。

注意:

你也可以使用MATLAB函数avifile创建视频,该函数将会创建格式为avi的文件,可以使用movie2avi函数把已有的MATLAB视频转换成AVI文件。

具体用法利用matlab的help命令获知。

用matlab制作动画的主要函数是getframe(捕捉轴或图形作为电影帧),movie(播放录制的电影帧)。

给你一个实例(丛笑匀强电场),以扒燃帮助你理解。

t=0:0.01:6*pi

v0x=1v0y=1

a1=1

y1=v0y*t+0.5*a1*t.*t

x1=v0x*t

for i=1:length(t)

plot(x1(1:i),y1(1:i))

axis([0,20,0,200])

grid on,hold on

plot(x1(i),y1(i),'r.','markersize',20) 

title('匀强电场'渗此含)

xlabel('x'),ylabel('y')

M(i)=getframe

end

movie(M,1)

运行过程及结果


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12288589.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-22
下一篇2023-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存