# donvreug

Member

11

114 Neutral

• Rank
Member

• Interests
Programming
1. ## Determining rotation angles for Rotation System B that produce the same result as Rotation System A

Thanks, I will.
2. ## Determining rotation angles for Rotation System B that produce the same result as Rotation System A

Ok I apologise for that.  It was Buckeye who suggested I post here though as he thought some of you guys might be able to help.
3. ## Determining rotation angles for Rotation System B that produce the same result as Rotation System A

At work we use various applications that each use different rotation conventions. I am trying to write an application that will provide the angles for all of the different 'conventions' in one place to make life easier for people moving from one application to the next. And yes it does get messy and mistakes can easily be made, hence why I am trying to make it easier for people.
4. ## Determining rotation angles for Rotation System B that produce the same result as Rotation System A

I am trying to find a solution to a problem such that   Given an initial coordinate system comprised of 3 orthogonal axes X, Y, Z, where Z is up, Y is North and X is East. Given a rotation definition (A) which describes successive rotations about each axes. Given the rotation angles for each axes produce a rotated coordinate system. For a rotation definition (B) which describes successive rotations about each axes, find the rotation angles that produce the same coordinate system as produced by rotation definition A.   For example:   If rotation definition A is defined by 3 successive rotations around Z, then Y and then X, all defined positive counter-clockwise from East to North, i.e. (+Z +Y +X), and whose angles are bounded by -180 and + 180 degrees.   And if rotation definition B is defined by 3 successive rotations around Z, then X, and then Z again, the first rotation being defined positive clockwise from North to East (i.e. Azimuth or A), the second one positive counter-clockwise from East to North and the third one positive clockwise from East to North, i.e. (A +X, -Z).  The first rotation angles are bounded by 0 to 360 degrees, while the second and third are bounded by -180 to + 180 degrees.   Find the rotation angles for definition B that produce the same result as definition A.   I am hoping to utilise a general algorithm into which I input the two rotation definitions and angles for the first definition.   I hope my description makes sense.  I have included some images to help visualise the problem.   The first image shows rotation definition A with angles 90, 10 and 20 and a visualisation of a 3D reference plane produced by the rotations.   The second image shows rotation definition B with the angles required to produce the same 3D reference plane.  It is these angles I wish to calculate.   Thanks in advance.
5. ## Determining rotation angles expressed in a different rotation system

Thanks.  I can resolve part of the problem with some simple maths and conditions on angle ranges when the rotation conventions are not too dissimilar.   I find this approach lacking somewhat and was hoping to utilise a general algorithm with which to attack the problem.  As part of that I expected to have to specify the individual rotation axes and direction of rotation, i.e. clockwise / counter-clockwise.  Unfortunately my knowledge of matrix maths is not sufficient to the task.  So I am interested in investigating any approach you might feel has merit. I Thankyou for your efforts to date and in the future.   I will however post on the maths forum to see if anyone else has some insights.
6. ## Determining rotation angles expressed in a different rotation system

This forms part of a process aimed at estimating a mean value into a specific location (a box or more accurately the centroid of that box) by selecting a subset of data from a larger set of data using a 'search' ellipsoid.  This is repeated for many boxes.  So ultimately we produce a 'model' consisting of many boxes each containing the localised average values from the surrounding data set.   We use various software packages in this process and they differ in how they define the orientation of this ellipsoid.  As we move from one package to another we need to know what the corresponding rotation angles are to ensure the ellipsoid has the correct orientation.  From the images you'll see a reference plane and the vector u (or an ellipse with the long axis in the same direction as the vector u).   The aim of the application I am writing is to calculate and display the rotation angles for each rotation convention given one of them.  That is let the user enter the angles for any one convention and all of the others are calculated and displayed.   So your final problem definition '1' is correct.   I hope this makes things a little clearer.
7. ## Determining rotation angles expressed in a different rotation system

Thanks for the tip on adding files.   The first two images are from one of the software applications we use.   This first image shows the rotations defined in the "mathematician" convention, i.e. +Z +Y +X, all positive counter-clockwise.   The second image shows the rotations defined by the "geologist plane" convention, i.e. A +X -Z, The first rotation being defined positive clockwise from North to East (Azimuth), the second one positive counter-clockwise about X and the third one positive clockwise about Z (A+X-Z).   The third image is the application I am writing.  It shows the same rotation angles as the mathematician convention, but ignore all the other angles as they are not correct yet.   Your point about whether they are in fact just one coordinate system may be valid, or is a new coordinate system defined by the resulting rotations?
8. ## Determining rotation angles expressed in a different rotation system

I apologise if I am not using the correct terminology.  I am talking about a coordinate system defined by 3 orthogonal vectors X, Y, Z and an origin.  Z in all cases is up, Y is North and X is East.  The origin is shared by each coordinate system.  What I have available to me are descriptions of the rotation conventions used in each coordinate system and angles of rotation about each axes which define a reference plane.   What I want to do is given the rotation angles in one coordinate system, determine the rotation angles of the second coordinate system that defines the same reference plane.   Successive rotations occur around the current axis orientation. So if we initially have X, Y, Z axes.  The first rotation is about Z.  So we now have X1, Y1, Z1 (Z1 = Z).  The second rotation is about Y1. We now have X2, Y2, Z2 (Y2 = Y1).  The third rotation is about X2.  So the final axes will be X3, Y3, Z3 (X3 = X2).   If I could figure out how to post an image I would.  I think that would make it clear.
9. ## Determining rotation angles expressed in a different rotation system

Yes that is what I am attempting to do.   I suspect where I am going wrong is in defining the matrix from system 1 to system 2.   So ignoring my code snippet...   If system 1 is defined by 3 successive rotations around Z, then Y, then X, all defined positive counter-clockwise from East to North (+Z+Y+X). Angles are bounded by -180 and +180 degrees.   and system 2 is defined by 3 successive rotations around Z, then X, then Z again, the first one being defined positive clockwise from North to East (Azimuth), the second one counter-clockwise from East to North and the third one clockwise from East to North (A+X-Z). The first angle is bounded by 0 and +360 degrees. The second and third are bounded by -180 and +180 degrees.   How do I go about finding the transformation matrix?