请问大家有没有人能看懂这个matlab动图程序,画的是一个圆,请问能解释一下这个画动图的思路吗?

顺便想问udatudata是什么意思以及这里面quiverquiver后面的8个参数都是什么意思,谢谢... 顺便想问udatudata是什么意思 以及这里面quiverquiver后面的8个参数都是什么意思,谢谢 展开
 我来答
kuxingseng1999
2019-07-05 · TA获得超过698个赞
知道小有建树答主
回答量:334
采纳率:86%
帮助的人:173万
展开全部
% 创建avi文件
vidObj = VideoWriter('Circle.avi');
open(vidObj);
hold on
% 创建动画
theta = 0:pi/50:2*pi; % 共101帧
x = cos(theta); % 单位圆,调整cos,sin系数,可画椭圆
y = sin(theta);
n = length(theta); % 帧长
axis([-1.5 1.5 -1.2 1.2])
h1 = quiver(0,0,0,1,'w','maxheadsize',0.8); % 画箭头图,箭头大小0.8
htxt = text(0,0,'(0,0)') % 文本初始化
for i = 1:n-1;
plot(x(i:i+1),y(i:i+1))
% 修改quiver(x,y,u,v)中u,v的值,即修改箭头指向
set(h1,'udata',x(i+1),'vdata',y(i+1),'color','r')
% 设定每一帧的标题
title(['x = ','(',num2str(x(i+1)),',',num2str(y(i+1)),')'])
% 设定动图中文本的位置
set(htxt,'position',[x(i),y(i),0],'rotation',0,'string',['x = ','(',num2str(x(i+1)),',',num2str(y(i+1)),')'])
axis([-1.5 1.5 -1.2 1.2])
axis equal
pause(0.02)

% 逐帧写入
currFrame = getframe;
writeVideo(vidObj,currFrame);
end
hold off
% 关闭文件
close(vidObj);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式