Re: how to keep an image object in the window? [message #50243] |
Sun, 24 September 2006 14:42  |
Michael Galloy
Messages: 1114 Registered: April 2006
|
Senior Member |
|
|
yy wrote:
> Hi there,
> I have a basic question about object. In my simulation, I want to
> display some 3D data, read the image displayed in the window and save
> the 2D image as one movie frame. When I display the image by using
> object graphics, I found that it will be erased by other windows which
> happened to be on top of it. In that situation, what I read in will be
> the content in the top window not the 3D data I displayed. This is
> really bad for me b/c limited by the storage space, it takes more than
> a day to run the whole program and get all the data. If I have to keep
> the displaying widow always on top, I can't do any other things while
> the program is running and I have to even turn off the screen saver. I
> don't know if there is some way to solve this problem. I found that
> even the examples given in IDL help has this problem. Could anybody
> help me about this? Thanks a lot!
>
> Jingyi
>
I have had weird issues with things like that too. I can't remember
exactly what was going on, but since you just want to get frames for
your movies and you're not looking at the frames anyway, try rendering
them to an IDLgrBuffer instead of an IDLgrWindow.
Mike
--
www.michaelgalloy.com
|
|
|
Re: how to keep an image object in the window? [message #50318 is a reply to message #50243] |
Mon, 25 September 2006 16:54  |
Rick Towler
Messages: 821 Registered: August 1998
|
Senior Member |
|
|
As you know, Michael's suggestion is the way to go.
The only thing to consider is that when drawing to an IDLgrBuffer IDL
uses the software renderer. In your case this doesn't matter since
you're rendering IDLgrVolume objects which force IDL to use the software
renderer anyways. But sometimes you want/need to use the hardware
renderer. In these cases you have to render to IDLgrWindow and the only
solution to your type if problem is to just start recording your
animation and take the rest of the day off :) er, I mean go to the
library and catch up on the literature...
-Rick
Michael Galloy wrote:
> yy wrote:
>> Hi there,
>> I have a basic question about object. In my simulation, I want to
>> display some 3D data, read the image displayed in the window and save
>> the 2D image as one movie frame. When I display the image by using
>> object graphics, I found that it will be erased by other windows which
>> happened to be on top of it. In that situation, what I read in will be
>> the content in the top window not the 3D data I displayed. This is
>> really bad for me b/c limited by the storage space, it takes more than
>> a day to run the whole program and get all the data. If I have to keep
>> the displaying widow always on top, I can't do any other things while
>> the program is running and I have to even turn off the screen saver. I
>> don't know if there is some way to solve this problem. I found that
>> even the examples given in IDL help has this problem. Could anybody
>> help me about this? Thanks a lot!
>>
>> Jingyi
>>
>
> I have had weird issues with things like that too. I can't remember
> exactly what was going on, but since you just want to get frames for
> your movies and you're not looking at the frames anyway, try rendering
> them to an IDLgrBuffer instead of an IDLgrWindow.
>
> Mike
> --
> www.michaelgalloy.com
|
|
|
Re: how to keep an image object in the window? [message #50319 is a reply to message #50243] |
Mon, 25 September 2006 14:30  |
yy
Messages: 14 Registered: September 2006
|
Junior Member |
|
|
Michael Galloy wrote:
> I have had weird issues with things like that too. I can't remember
> exactly what was going on, but since you just want to get frames for
> your movies and you're not looking at the frames anyway, try rendering
> them to an IDLgrBuffer instead of an IDLgrWindow.
>
> Mike
> --
> www.michaelgalloy.com
Thanks a lot for your suggestion! It works well!
Jingyi
|
|
|
Re: how to keep an image object in the window? [message #50341 is a reply to message #50243] |
Sun, 24 September 2006 17:27  |
David Fanning
Messages: 11724 Registered: August 2001
|
Senior Member |
|
|
Michael Galloy writes:
>
> I have had weird issues with things like that too. I can't remember
> exactly what was going on, but since you just want to get frames for
> your movies and you're not looking at the frames anyway, try rendering
> them to an IDLgrBuffer instead of an IDLgrWindow.
This is a good suggestion. You could also make sure this window
was on top (WIDGET_CONTROL, windowTLB, /SHOW) before you tried
to take a snapshot of it. I've also had to put a small WAIT into
my code, on occasion, to make sure the window made it *completely*
to the top before processing.
Cheers,
David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.dfanning.com/
|
|
|