Hi Saurabh,
> >In my application i change the viewingplatform's transform >and immediately after that use the following piece of code to >get the world coordinates from the canvas coordinates > >pt - any point on canvas > > canvas3d.getPixelLocationInImagePlate(pt.x, pt.y, point3d); > Transform3D temp = new Transform3D(); > canvas3d.getImagePlateToVworld(temp); > temp.transform(point3d); > >but the points i get are corresponding to the viewingplatform's >previous transform value. > >It seems that there is a time lag in transform update and canvas renderer >because on introducing a sleep of few seconds the values are evaluated >correctly. > >Now, I have got 3 questions - > >1. Is this due to the slow response of renderer thread ? > >2. Is there any way by which i could get the notification of canvas >values being > updated after viewing platform's transform change ? > >3. Is there any other procedure by which i can evaluate the world >coordinates > corresponding to the canvas coordinates ? > >will appreciate any help > > Current architecture use another thread to update the internal View Canvas coordinate system. So if you modify the View platform, it will not reflect immediately in the same thread. A way to work around is to use wakeupOnElapsedFrame behavior to get back the image plate coordinate in the next frame. Thanks. - Kelvin --------------- Java 3D Team Sun Microsystems Inc. =========================================================================== 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".
