Nikolai, See if the following modifications are what you're looking for:
..... t.getRotationScale(rotationScale); // begin mods: double tscale = t.getScale(); rotationScale.mul( 1.0 / tscale ); // end mods: ..... Your test results should now be identical. AxisAngle4d.set( Matrix3d ) probably needs a pure rotation matrix. Specifically, can it handle embedded nonuniform scale factors ? May be Chien can verify this. Vaidya >On Wed, 28 Apr 2004 16:12:41 +0200, Nikolai V. Chr. <[EMAIL PROTECTED]> wrote: >Thy the code below. You will see that setting a translation makes the >rotation values wrong. Translation values are not even present in a >Matrix3d, so how can this be?? > >Try comment the "t.set(new Vector3d(10,0,10));" line out, and observe >the different result. > >import javax.media.j3d.*; >import javax.vecmath.*; > >public class RotationTest { > > public RotationTest() { > } > > public static void main(String[] args) { > Transform3D t= new Transform3D(); > Matrix3d rotationScale = new Matrix3d(); > AxisAngle4d rotation = new AxisAngle4d(0, -1, 0, Math.PI/2); > System.out.println(rotation); > t.set(new Vector3d(10,0,10)); > t.setRotation(rotation); > t.setScale(0.5d); > t.getRotationScale(rotationScale); > rotation.set(rotationScale); > System.out.println(rotation); > } >} > >Test result: >(0.0, -1.0, 0.0, 1.5707963267948966) >(0.0, -1.0, 0.0, 2.0344438552856445) > > >Any workaround will be appreciated > >Regards >Nikolai > >---------------------------------------------- >Nikolai V. Christensen, Computer Engineer, >Simulation and Training department >IFAD, Forskerparken 10A, DK-5230 Odense M >Denmark, EU >Phone: +45 63 15 71 31 Fax: +45 65 93 29 99 >WWWeb: http://www.ifad.dk >e-mail: [EMAIL PROTECTED] >---------------------------------------------- > > ========================================================================== >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".