怎样用matlab做动画
2个回答
展开全部
用matlab制作动画的主要函数是getframe(捕捉轴或图形作为电影帧),movie(播放录制的电影帧)。
给你一个实例(匀强电场),以帮助你理解。
t=0:0.01:6*pi;
v0x=1;v0y=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)
运行过程及结果
2017-03-23
展开全部
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次
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次
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询