From: William Slater on
Hey All:

I've got a gui program that I made which creates plots for each of the fields of the structured data it reads in...one plot per field...thousands of fields. My M.O. for doing this is as follows:

for a = 1 : Total_num_message
[time_data, msg_data, msg_name] = Black_Box(RAW_DATA);
fname = ['C:\test output\' msg_name '.bmp'];
bound_box = [50 50 700 500]; % region of the GUI I want saved to bitmap
plot(handles.Chart_Area, time_data, message_data);
F = getframe(handles.Chart_Area, bound_box);
imwrite(F.cdata, fname, 'bmp');
end

The construct I have above works perfectly except for 2 things. First, if I open another window that overlays the GUI while the for-loop is running, the getframe command will grab whatever is covering the GUI and save it to the bmp file. Second, as there are thousands of messages to cycle through, the screensaver will eventually kick in. In this case, the getframe command will just grab an empty black box.

Does anyone know of any alternative to my method that will allow me to batch my image captures while allowing me to work on something else or leave my workstation? All suggestions are welcome. Thanks in advance.

Will Slater
From: Ashish Uthama on
On Fri, 12 Feb 2010 12:47:22 -0500, William Slater
<William.L.Slater(a)lmco.com> wrote:

> Hey All:
>
> I've got a gui program that I made which creates plots for each of the
> fields of the structured data it reads in...one plot per
> field...thousands of fields. My M.O. for doing this is as follows:
>
> for a = 1 : Total_num_message
> [time_data, msg_data, msg_name] = Black_Box(RAW_DATA);
> fname = ['C:\test output\' msg_name '.bmp'];
> bound_box = [50 50 700 500]; % region of the GUI I want saved to
> bitmap
> plot(handles.Chart_Area, time_data, message_data);
> F = getframe(handles.Chart_Area, bound_box);
> imwrite(F.cdata, fname, 'bmp');
> end
>
> The construct I have above works perfectly except for 2 things. First,
> if I open another window that overlays the GUI while the for-loop is
> running, the getframe command will grab whatever is covering the GUI and
> save it to the bmp file. Second, as there are thousands of messages to
> cycle through, the screensaver will eventually kick in. In this case,
> the getframe command will just grab an empty black box.
>
> Does anyone know of any alternative to my method that will allow me to
> batch my image captures while allowing me to work on something else or
> leave my workstation? All suggestions are welcome. Thanks in advance.
>
> Will Slater

This might give you some ideas:
http://www.mathworks.com/support/solutions/en/data/1-3NMHJ5/index.html?solution=1-3NMHJ5
From: ImageAnalyst on
Will Slater
Screen savers can be turned off you know - check your control panel if
you're in Windows. Also check your power options (another control
panel) to make sure nothing will shut off after a certain amount of
time.

From: William Slater on
ImageAnalyst <imageanalyst(a)mailinator.com> wrote in message <798dce68-0e99-4c4d-bc78-905e89214fe0(a)o28g2000yqh.googlegroups.com>...
> Will Slater
> Screen savers can be turned off you know - check your control panel if
> you're in Windows. Also check your power options (another control
> panel) to make sure nothing will shut off after a certain amount of
> time.
From: William Slater on
ImageAnalyst <imageanalyst(a)mailinator.com> wrote in message <798dce68-0e99-4c4d-bc78-905e89214fe0(a)o28g2000yqh.googlegroups.com>...
> Will Slater
> Screen savers can be turned off you know - check your control panel if
> you're in Windows. Also check your power options (another control
> panel) to make sure nothing will shut off after a certain amount of
> time.

Would if I could, but this is a government computer. Unattended workstations must by locked by a screensaver. Besides, the ability to turn off the screensaver has been blocked by our gracious IT department. One can feel the love and trust that flows through our company.

/sarcasm