最近正在写一个仿真快速画图的GUI。
以下这段的功能是,
点一下按钮,就把打开了的Scope的图直接保存成jpg文件。 以前的话基本都是用截图工具,或者先把Scope的Menubar设置成可见,之后再Save as为图像。
删掉了备注,刚好十行,可却花了好几天的时间找如何定位到特定object的方法……
function quickSave_Callback(hObject, eventdata, handles)
set(0,'ShowHiddenHandles','On');
fig = findobj('Tag','SIMULINK_SIMSCOPE_FIGURE','-and','Visible','on');
numberOfOpenScope = size(fig,1);
for i = 1:numberOfOpenScope
set(fig(i),'PaperPositionMode','auto');
F = getframe(fig(i));
[filename,pathname] = uiputfile({'*.jpg';,'*.bmp';,'*.png';},'Save file name');
imwrite(F.cdata,[pathname,filename]);
end
前几天正在研究如何可以一键把scope快速保存成fig文件,真的是试了好多方法都失败了。
在不设置scope保存到workspace的情况下,怎么提取到那些信号的数据。fig的属性全看完了也没有找到,model的workspace也没有找到。
然后昨天发现,Simulink最新版就自带这个快捷的功能。