I am getting quaternion data from my sensors. I use Python and Arduino. "Bone 1" is the shoulder. Bone2 is the upper arm, Bone3 is the forearm, and Bone4 is the hand. Each bone has a sensor. When I move the arm up, Bone2-4 have the same sensor readings.

enter image description here

Here you can see how the bones move incorrectly.

enter image description here

I need to subtract the value from the parent. I tried "q.rotation_difference ()", but then the bones all go in the wrong directions.

This is how it should look with an extended arm.

enter image description here

Does anyone know how I can calculate that?



You must log in to answer this question.

Browse other questions tagged .