0

Good afternoon guys, I have an animation in PyOpenGL, which receives the coordinates of a file, and then animates an ROV.

This animation calculates the homogeneous ROV matrix containing its position and Orientation in certain instants of animation, (Ex, 10 seconds of animation are 2000 lines of coordinates "X Y Z").

I'm bringing this simulation to Blender, for working on it creating a more real world for animation.

But I'm having problems.

I have a CAD Object that is an ROV, and when I step at all instants of the animation this Homogeneous Matrix, the position of the ROV is correct, but the orientation of it goes wrong, inside the Blender.

It seems that Phi, Theta and Csi are reversed. The orientation should go to the left, but it appears going right. How can I check this and change the orientation of the object, which is being passed by the homogeneous Matrix:

Would anyone help me understand why this occurs?

Blender work with Matrix Homogeneous different from OpenGL?

Codes: Sample Matrix homogeneous:

posture =
[ 0.21468954 -0.86920989 -0.4454017  -1.61063969 
  0.65986419 -0.20712563  0.72227293  2.18389297 
 -0.72006083 -0.44896907  0.52909279 -7.34360504 
  0.  0.  0.  1.]

self.owner.localTransform = posture

Result: Rov should be in the right orientation, with his forehead elevated. He is inverted and with the front pointing down

Rov should be in the right orientation, with his forehead elevated. He is inverted and with the front pointing down.

Thanks for helping.

0 Answers0