我遇到一个问题,就是在速度场中使用matlab中的streamslice函数创建一个电影。 在该代码中,我展示了如何使用精简和颤动电影。它运行良好。但是,当我使用streamlice时,数据不会刷新,而曲线曲线正在绘制另一个。有人已经完成了流媒体视频吗?
带流线和箭头的速度场代码
for k = 1:numb_time_step
xx{k}=x;
yy{k}=y;
quiver(xx{k},yy{k},u_final{k},v_final{k},10)
startx =0:0.05:1;
starty =0:0.05:1;
streamline(xx{k},yy{k},u_final{k},v_final{k},startx,starty);
view(2),axis([0 1 0 1])
title({'Velocity Field';['Time(\itt) = ',num2str(time(k))]})
xlabel('coordenada x')
ylabel('coordenada y')
grid on
drawnow;
refreshdata(h);
M(k)=getframe(gcf); % leaving gcf out crops the frame in the movie.
end
movie2avi(M,'Streamlines.avi');
StreamSlice代码
for k = 1:numb_time_step
xx{k}=x;
yy{k}=y;
h=streamslice(xx{k},yy{k},u_final{k},v_final{k});
view(2),axis([0 1 0 1])
title('Stream Lines of Vector Field')
xlabel('Coordenada x')
ylabel('Coordenada y')
grid on
grid on
drawnow;
refreshdata(h);
M(k)=getframe; % leaving gcf out crops the frame in the movie.
end
movie2avi(M,'StreamSlices.avi');