Hi,
 
I am using this code to move and rotate a satellite :
 
       Matrix3f transyz = new Matrix3f( 0, 1, 0,
                 0, 0, 1,
                 1, 0, 0);
        Transform3D te = new Transform3D (transyz, new Vector3d(0,0,0), 1);
        TransformGroup satellite = new TransformGroup (te);
        ...
        satellite.addChild(...);
        ...
        RotPosPathInterpolator path = new RotPosPathInterpolator (alpha, satellite, te, knots,  orientations, positions);
        path.setSchedulingBounds (bounds);
        satellite.addChild (path);
 
 
The orientations and the positions are arrays of Quad4f and Point3f in the ECI (geocentric) coordinate system.
 
The x-axis of the ECI system is the z-axis of Java3d, y-axis of ECI is x-axis of Java3d and z-axis of
ECI is the y-axis of Java3D. That's why I need the matrix transyz.
 
I can see that the Transform3d is doing the expected job for the positions, but not for the quaternions.
 
My question is then :
Does the Transform3D te transform also the orientations in my code or should I transform them differently ?
 
If you are interested, you can have a look at my program here :
 
Thanks.
 
 

__________________________________________________
IncrediMail - Email has finally evolved - Click Here

Reply via email to