Hi Tina,

>X-Unix-From: [EMAIL PROTECTED]  Tue Jul  3 08:24:33 2001
>Delivered-To: [EMAIL PROTECTED]
>X-Sender: ceetm2@odin
>MIME-Version: 1.0
>Date: Tue, 3 Jul 2001 16:24:16 +0100
>From: Tina Manoharan Valappil <[EMAIL PROTECTED]>
>Subject: [JAVA3D] Non-Congruent Transform Error !!
>To: [EMAIL PROTECTED]
>
>        Hello,
>
>        Please help me with this error!
>
>        This is what I want to do. While the user navigates (either mouse
>        or keyboard), if he presses the button "Ground" only his
>        position and y-rotation values should remain. In other words I want
>        to put him back exactly on the ground (Tx, 0.5, Tz) with only
>        rotation about the y-axis.
>
>        This is what I am doing:
>
>        original matrix:                final matrix:
>
>        Rx1 Rx2 Rx3 Tx                  Rx1   0   Rx3 Tx
>        Ry1 Ry2 Ry3 Ty                  0     1   0   0.5
>        Rz1 Rz2 Rz3 Tz                  Rz1   0   Rz3 Tz
>        0   0   0   1                   0     0   0   1
>
>        But when I do this, I get non-congruent transform exception.
>
>        can someone give me an idea as to how I can do this Please!
>
>        Tina
>

Congruent Transform require that
(i) dot produce of any two column vector is zero (orthogonal)
(ii) x,y,z scale are the same.
In this case, although
Rx1*Rx3 + Ry1*Ry3 + Rz1*Rz3 = 0  holds in the original matrix
Rx1*Rx3 + Rz1*Rz3 may not equal to 0 in the final matrix

Thus the first condition did not satisify.

Also for the second condition imply that in the final
matrix:

(sqaure sum of 1st col)   (2nd col)   (3rd col)
Rx1*Rx1 + Rz1*Rz1 ==         1 ==  Rx3*Rx3 + Rz3*Rz3

- 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".

Reply via email to