我在Matlab中开发了一个GUI,用户可以通过相机控件工具栏平移/旋转3D绘图。现在,客户希望记录图形/情节,同时能够以交互方式改变位置。
到目前为止,我已经尝试将writeVideo命令放在像这样的while循环中......
aviobj = VideoWriter( ['test.avi'] );
open(aviobj);
fig = handles.axes_3DViewer;
stopState=1;
while stopState == 1
cameratoolbar('SetMode','orbit');
axis vis3d
writeVideo(aviobj, getframe(fig));
pause(0.1);
stopState=strcmp(get(handles.uipushtool_stop,'State'),'on');
end;
close(aviobj);
但是在旋转时我只会遇到如下错误:
Error while evaluating uitoggletool ClickedCallback
Error using VideoWriter/writeVideo (line 383)
Frame must be 553 by 650
我已经尝试过为writeVideo命令设置一个框架,但不知怎的,它没有改变结果。任何人都有一些想法如何在Matlab中?
干杯 米卡