Page 1 of 1

Joint Axes of Rotation Display

Posted: Fri Sep 26, 2014 12:36 pm
by jnichols
Is there a way to display the location and orientation of joint axes in the GUI?

I understand that you can see the numerical coordinates in the properties menu by clicking on the joint. I also understand that you can toggle child and parent frames. However, I cannot find a way to display joint axes of rotation that are not coincident with bone axes.

Re: Joint Axes of Rotation Display

Posted: Thu Oct 02, 2014 4:57 pm
by jimmy
Hi Jennifer,

The parent and child joint frames describe the joint axis.

You can change the <orientation_in_parent> (0,0,1) and mirror the change in <orientation> (0,0,1) to see how you can alter the joint axis.

Hope that helps,
-james

Re: Joint Axes of Rotation Display

Posted: Fri Oct 03, 2014 9:39 am
by jnichols
Hi James,

Can you provide a little bit more information on how you can use the parent-child orientation to visualize non-orthogonal axes of rotation?

For example, in the MoBL-ARMS Dynamic Upper Limb model, the wrist's radiocarpal joint has two non-orthogonal axes of rotation described in rotation1 [-0.819064 -0.135611 -0.557444] and rotation3 [0.95642673 -0.25220693 0.14710396]. However, my understanding is that the parent/child frame description on the joint does not allow visualization of both of these axes simultaneously because any input for the orientation_in_parent will transform (and display) the orthogonal coordinate system of the bone.

Thanks for your help!


Jen

Re: Joint Axes of Rotation Display

Posted: Thu Oct 16, 2014 10:57 am
by jimmy
Jennifer-

There no way of visualizing non-orthogonal rotation axes in the gui. You can make a feature request under the advanced tab.

Cheers,
-james

Re: Joint Axes of Rotation Display

Posted: Thu Oct 16, 2014 12:36 pm
by jnichols
James,

Thanks for the clarification. I submitted the feature request.


Jen

Re: Joint Axes of Rotation Display

Posted: Fri Jan 09, 2015 2:13 pm
by justinwager
Hi Jen,

I was having this same problem. In another thread, Ayman Habib suggested a hack of adding 2 markers and computing their locations to lie on the axis. I did this by scaling the rotation axis unit vector (taken from the .osim file) by 0.1 and adding it to the "location in parent" of the axis. I computed a second marker with the same method, but using the negative of the rotation axis unit vector

For your arm model's rotation1:
0.1* [-0.819064 -0.135611 -0.557444] + [loc_in_parent]
and
0.1* [+0.819064 +0.135611 +0.557444] + [loc_in_parent]

This hack can be taken a step further to get an actual line visualization instead of markers. Add a PathSpring to your .osim file. In the GUI, edit the GeometryPath of the PathSpring so that it has 2 attachment points, both on the parent body of your axis. Give the attachment points the values that you computed for the markers above. You should then see your axis.

Hope that helps - let me know if you need more clarification.

Justin

Re: Joint Axes of Rotation Display

Posted: Fri Jan 09, 2015 2:24 pm
by jnichols
Hi Justin,

Thanks for the suggestion. I've used a similar approach with muscle paths for visualization purposes, but hadn't thought about using the PathSpring.

I am hoping a visualization feature in the GUI is added in the future since it is inefficient to maintain model files separately for visualization vs. dynamic simulation.


Jen