Is it possible to visualize muscle fiber and tendon lengths loaded from a states file? #947
-
OpenSim determines muscle and fiber lengths from the model's joint coordinates (i.e. the model's position), so as long as you can load a states file that contains joint coordinates, then OSC should have enough information to give you muscle fiber/tendon lengths. The current options to visualize them include
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
I had not realized OSC could visualize muscle fiber and tendon lengths - this is a great feature and something I've wished for in OpenSim for a long time. It's extremely valuable to be able to visually verify reasonable muscle fiber and tendon lengths in the model. As a suggestion for a future feature, it would be even more helpful to be able to dynamically update the tendon/fiber lengths during a simulation (or visualize them when loaded from a file). The muscle fibers can contract and the tendons stretch during a simulation, so they may vary over the course of a simulation. This can cause other problems that arise during the simulation. For example, CMC will sometimes spit out a warning that the muscle is producing small force because it is outside of it's nominal operating range on the force length curve. This can be caused by unrealistic fiber/tendon lengths, but it is a bit of a mysterious warning when you first see it. Being able to visually verify the fiber/tendon lengths during a simulation can help ensure that parameters such as tendon stiffness are realistic. |
Beta Was this translation helpful? Give feedback.
Glad to hear it, and good suggestion!
I'm not entirely sure about the OpenSim API, but I believe that the fiber/tendon visualization, as it is now, should reflect the tendon/fiber lengths during a simulation. The associated OpenSim methods being used to compute the 3D geometry are state-dependent:
But I can try and double-check if that's the case. The 3D visualization tries to reflect the current state of the model as closely as possible - quite a lot of the rendering/plotting architecture was designed to handle doing so in realtime etc.