- #1
neorich
- 20
- 1
Dear All,
I have inherited a few rotation matrices through some old computer code I am updating. The code is used to construct some geometry.
The matrices I have inherited are left handed rotation matrices and they are being applied to a right handed coordinate system, but they give the correct rotations (by correct I mean that the objects being rotated have the correct x, y and z in the right handed coordinate system).
What I want to do is to find the right handed equivalent rotation matrices to apply to the right handed coordinate system such that the the objects positions are unchanged, but my matrices become "standard". I require standard right handed matrices to allow me to make use of some code libraries.
So to re-cap:
I have a left handed matrix ML, a starting position vector V1, and a rotated position vector V2, at present I have:
V2 = ML * V1 ... and this gives the correct V2 for my geometry.
What I want is a right handed matrix MR, which also gives:
V2 = MR * V1 ... where V2 is the same in both equations and V1 is the same in both equations.
I need my solution to hold true for any V1 I choose to use, I am able to get a RH rotation matrix which applies to any given pair V1 and V2, but not simultaneously to all pairs.
Simply looking at the above equations, it is unclear that this can be done unless ML=MR.
But considering the geometry, I must be able to construct a RH rotation matrix that provides me with the rotations I need.
Below is an example of one of my present left handed rotation matrices:
ColX, ColY, ColZ
( 0.0397092 , -0.0288239 , 0.998795 )
( 0.808299 , -0.586725 , -0.0490677 )
( -0.587432 , -0.809273 , 0 )
clearly X cross Y = -Z here, and I need a matrix which has the property X cross Y = Z.
Thanks for any solutions, pointers and advice you can provide to me.
Regards
neorich
I have inherited a few rotation matrices through some old computer code I am updating. The code is used to construct some geometry.
The matrices I have inherited are left handed rotation matrices and they are being applied to a right handed coordinate system, but they give the correct rotations (by correct I mean that the objects being rotated have the correct x, y and z in the right handed coordinate system).
What I want to do is to find the right handed equivalent rotation matrices to apply to the right handed coordinate system such that the the objects positions are unchanged, but my matrices become "standard". I require standard right handed matrices to allow me to make use of some code libraries.
So to re-cap:
I have a left handed matrix ML, a starting position vector V1, and a rotated position vector V2, at present I have:
V2 = ML * V1 ... and this gives the correct V2 for my geometry.
What I want is a right handed matrix MR, which also gives:
V2 = MR * V1 ... where V2 is the same in both equations and V1 is the same in both equations.
I need my solution to hold true for any V1 I choose to use, I am able to get a RH rotation matrix which applies to any given pair V1 and V2, but not simultaneously to all pairs.
Simply looking at the above equations, it is unclear that this can be done unless ML=MR.
But considering the geometry, I must be able to construct a RH rotation matrix that provides me with the rotations I need.
Below is an example of one of my present left handed rotation matrices:
ColX, ColY, ColZ
( 0.0397092 , -0.0288239 , 0.998795 )
( 0.808299 , -0.586725 , -0.0490677 )
( -0.587432 , -0.809273 , 0 )
clearly X cross Y = -Z here, and I need a matrix which has the property X cross Y = Z.
Thanks for any solutions, pointers and advice you can provide to me.
Regards
neorich