ConstantCurvatureJoint in next release?

Provide easy-to-use, extensible software for modeling, simulating, controlling, and analyzing the neuromusculoskeletal system.
POST REPLY
User avatar
Pagnon David
Posts: 86
Joined: Mon Jan 06, 2014 3:13 am

ConstantCurvatureJoint in next release?

Post by Pagnon David » Tue Jan 09, 2024 7:49 am

Dear all,

I would like to try using the BSM.osim model from the SKEL paper. This model uses a new kind of joint (ConstantCurvatureJoint), that is not supported by the last release yet. Is there any news concerning when it will be supported?

Tags:

User avatar
Pagnon David
Posts: 86
Joined: Mon Jan 06, 2014 3:13 am

Re: ConstantCurvatureJoint in next release?

Post by Pagnon David » Tue Jan 09, 2024 7:54 am

I see it is already integrated in the source code (https://github.com/opensim-org/opensim- ... ureJoint.h) so I would like to build OpenSim from source on Windows, following these instructions: https://github.com/opensim-org/opensim- ... structions.

I am aware that it is another issue, but at the end of the compilation process, it tells me it cannot find the C:\opensim-core\sdk\python
So I just copy-pasted this folder from my previous OpenSim4.4 install.

This let me go further, but then the tests failed with error: `ImportError: DLL load failed while importing _simbody`

Code: Select all

ImportError: Failed to import test module: test_swig_additional_interface
Traceback (most recent call last):
  File "C:\Python312\Lib\unittest\loader.py", line 394, in _find_test_path
    module = self._get_module_from_name(name)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Python312\Lib\unittest\loader.py", line 337, in _get_module_from_name
    __import__(name)
  File "C:\opensim-core\sdk\python\opensim\tests\test_swig_additional_interface.py", line 9, in <module>
    import opensim as osim
  File "C:\opensim-core\sdk\python\opensim\__init__.py", line 9, in <module>
    from .simbody import *
  File "C:\opensim-core\sdk\python\opensim\simbody.py", line 16, in <module>
    from . import _simbody
ImportError: DLL load failed while importing _simbody: Le module specifie est introuvable.

User avatar
Ayman Habib
Posts: 2248
Joined: Fri Apr 01, 2005 12:24 pm

Re: ConstantCurvatureJoint in next release?

Post by Ayman Habib » Tue Jan 09, 2024 8:38 am

Hi,

Please try the 4.5 Beta release on the downloads page and let us know how it goes, as it has this built into it.

Likely since the bindings you copied from 4.4 are inconsistent with the rest of the build from source, the first dll attempt fails to load but other things could go wrong in the process, so using a consistent build would be a good first step.

Ayman

User avatar
Pagnon David
Posts: 86
Joined: Mon Jan 06, 2014 3:13 am

Re: ConstantCurvatureJoint in next release?

Post by Pagnon David » Tue Jan 09, 2024 8:47 am

Oh, I did not see it, I will try this beta release right now!

the 4.4 bindings being inconsistent with the rest of the build makes sense indeed, it was just a wild try... Thanks!

User avatar
Pagnon David
Posts: 86
Joined: Mon Jan 06, 2014 3:13 am

Re: ConstantCurvatureJoint in next release?

Post by Pagnon David » Thu Jan 11, 2024 3:28 am

The conda package seems to work and I guess I don't need the GUI, but it might be of interest that opening it in the GUI is a bit buggy:

- The Geometry cannot be loaded. This is because the Geometry provided in the BSM.osim model is in .ply format. Should work fine after conversion.

- However, there is a gigantic ball that cannot be hidden which hides the model. When I click on it, it points to the scapulothoracic joint (EllipsoidJoint). Honestly this is kind of weird because it does not seem to be attached to any WrapObject, and stays there even if I hide everything but the ground (including Bodies, Joints, Constraints, Contact Geometry, Fores, Markers, Controllers, Probes, and Other Components).

Would it be worth filing an issue?

Screenshot.png
Screenshot.png (302.77 KiB) Viewed 1421 times

User avatar
Mohammadreza Rezaie
Posts: 407
Joined: Fri Nov 24, 2017 12:48 am

Re: ConstantCurvatureJoint in next release?

Post by Mohammadreza Rezaie » Thu Jan 11, 2024 2:03 pm

Hi, I just checked the OpenSim Conda package v.4.5 and the ConstantCurvatureJoint didn't exist:

AttributeError: module 'opensim' has no attribute 'ConstantCurvatureJoint'

So far, it is only available in GUI 4.5 beta.
Last edited by Mohammadreza Rezaie on Thu Jan 11, 2024 2:14 pm, edited 1 time in total.

User avatar
Thomas Uchida
Posts: 1792
Joined: Wed May 16, 2012 11:40 am

Re: ConstantCurvatureJoint in next release?

Post by Thomas Uchida » Thu Jan 11, 2024 2:03 pm

Which version of OpenSim are you using? There was an issue in version 4.4 (possibly in earlier versions as well) where the ellipsoid drawn by EllipsoidJoint::generateDecorations() could not be hidden. This was reported as Issue #1440 in the GUI repo (https://github.com/opensim-org/opensim-gui/issues/1440) and fixed in PR #3445 in opensim-core (https://github.com/opensim-org/opensim-core/pull/3445).

User avatar
Pagnon David
Posts: 86
Joined: Mon Jan 06, 2014 3:13 am

Re: ConstantCurvatureJoint in next release?

Post by Pagnon David » Fri Jan 12, 2024 1:37 am

tkuchida wrote:
Thu Jan 11, 2024 2:03 pm
Which version of OpenSim are you using? There was an issue in version 4.4 (possibly in earlier versions as well) where the ellipsoid drawn by EllipsoidJoint::generateDecorations() could not be hidden. This was reported as Issue #1440 in the GUI repo (https://github.com/opensim-org/opensim-gui/issues/1440) and fixed in PR #3445 in opensim-core (https://github.com/opensim-org/opensim-core/pull/3445).
That sounds a lot like it actually. I just downloaded the latest beta release for Windows: 4.5-2023-12-04-cfbf426

Adding this to the EllipsoidJoints solved this issue

Code: Select all

<EllipsoidJoint name="myEllipsoidJoint">
    ...
    <Appearance>                  <!-- added -->
        <visible>false</visible>  <!-- added -->
    </Appearance>                 <!-- added -->
</EllipsoidJoint>
Now I'm facing a few others with this BSM/SKEL model, but that will be for another time :)

POST REPLY