AxisAngle rotation reverse?

I have 3d objects which are translated at certain z from each other and rotated. The information of the rotations are saved in the vector as AxisAngle format: {x_vec, y_vec, z_vec, teta_angle}. So I have a certain chain and I want to reverse it, meaning that he last unit should be first, etc. So all the rotations must be changed accordingly, i.e. reversed/inversed. Unfortunately I can't find a proper way to do that, could someone advise?
Same axis, opposite rotation angle.
It does not work or I don't get it. For example, I have rotations {0,1,0, 30.0}, {0, 0.6, 0.2, 60.0}. So opposite chain will not be {0, 0.6, 0.2, 60.0+180.0}, {0,1,0, 30.0+180.0}
The opposite rotation to +30 degrees is .... -30 degrees. MINUS THIRTY DEGREES.
Last edited on
it's the same, when you add 180 to the angle, you get the opposite. However, I tried all possible simple ways and it does not work.
t's the same, when you add 180 to the angle, you get the opposite


That's complete nonsense. If you turn a quarter turn clockwise then you can get back to where you started by turning a quarter angle anticlockwise.

If you have rotations
{0,1,0, 30.0}, {0, 0.6, 0.2, 60.0}
then the reverse (also done in the reverse order) is
{0, 0.6, 0.2, -60.0}, {0,1,0, -30.0}
Note those minus signs.

The "opposite" rotation is that turning the other way. It is NOT the opposing angle in a 360-degree circle, which is to do with direction of translation.

Last edited on
Sorry, my question maybe is oversimplified and not correct. Here is a detail situation:
Note attached the chain of cubes, every of them is translated and rotated in the respect of the previous one.Let‘s say I want to rotate the part of it additionaly by 60 degrees based on the vector at which I am doing the cut.What I want to do, I want to move the first part as well in the opposite side to the first part. This is complicated because I must build rotation not from the start, but from the end, i.e. starting point is the section in in the middle. Meaning I must build rotation from 4th>3th>2th>1th>0th cube. So angle change is not enough, the vectors itself must be reversed.
https://ibb.co/98bPzM0
it's the same, when you add 180 to the angle, you get the opposite.

Full circle is 360, not 180. -30 equals thus +330, not +210.

Lets make it more prominent. You did turn left for just 1 degree.
You propose that turning 181 degrees left will get you back. No, that puts you to 182 from start, which is 178 degrees to right from start.
However, if you turn left 359 degrees (360-1), then you face forward again, as at start.
Or, you can turn right one degree (-1).


PS. AxisAngle format is close to quaterion. Quaternion math is convenient for rotations.
Topic archived. No new replies allowed.