Should be able to do it by subclassing Canvas3D and overriding the postSwap() method:
public class myCanvas extends Canvas3D { public Object waitObject = new Object(); public void postSwap() { waitObject.notifyAll(); } } Then instead of Thread.yield() etc. just call myCanvas.waitObject.wait(); Hope it helps, Ewan ----- Original Message ----- From: "Chris Ender" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, October 15, 2003 1:20 PM Subject: [JAVA3D] heavy calculation between frames > Hi Java 3D fans > > I do a simulation. The calculation takes about a second and the rendering > about 0.5 to 10 seconds. that is how it is done in a Thread so far: > > in Thread.run(): > > canvas.stopRenderer(); > heavyCalculation(); > canvas.startRenderer(); > > //wait > try { > Thread.yield(); > Thread.sleep(500); > } catch (InterruptedException ie) { > } > > unfortunatly the canvas isn't updated when the rendering takes more than 500 > ms. I want to update the picture after every step in simulation. > my question: is there any possibility to ask the canvas if it is ready with > rending? I need something like: repeat Thread.yield/sleep until > canvas.finished. Is this possible? > > Thank you > > Chris Ender > > =========================================================================== > To unsubscribe, send email to [EMAIL PROTECTED] and include in the body > of the message "signoff JAVA3D-INTEREST". For general help, send email to > [EMAIL PROTECTED] and include in the body of the message "help". > =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA3D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".