Forum Replies Created
-
AuthorPosts
-
HugoKeymaster
Hey @agnesenardi @yupeng @akthetimes
Yes definitely your topics seem really close!
If you are all interested, we could set up a meeting in the coming weeks to discuss this further.Anyway, the idea of the pipele is described above in my previous post.
Best wishes,
Hugo
HugoKeymasterHey @amackeith
Your scene looks nicely complicated, well done!
The idea of selecting only a subset of point for the collision is cool and should work well.However, the collision model of each leg should appear as the child node of this leg.
Before going further, I would make sure that modeling only one leg (without rigid body or anything else) you can have a proper collision detection and response.Then, creating a rigid part and connecting it with these legs should be easier.
Did you get inspired from the MechanicalMatrixMapper scene?Best
Hugo
HugoKeymasterHi @brunob81hk
I would first use for transformation a TransformEngine : this engine allows to apply a transformation (translation/rotation) and output the associated positions based on input positions. You can have a look at the example : TransformEngine. The TransformMatrixEngine might also be of interest.
I would recommend to decouple each transformation (translation // rotation).
I hope this helps.Best wishes,
Hugo
HugoKeymasterHi @bence
Interesting topic!
We have models to handle thin 3D objects like a trachea. You can for instance see the QuadBendingFEMForceField introduced by Nhang in #1745.However, this is a mechanical constitutive law (you can find functions computing the material strain or the material stiffness). However, if you want your material to break, this need to be additionally defined (tearing threshold).
I know that InfinyTech3D is working on such topics.
Best,
Hugo
HugoKeymasterGreat to hear, thanks @quantanovo for letting us know and closing the topic!
Looking forward to seeing your simulation achievements!Hugo
HugoKeymasterHugoKeymasterHey @akthetimes
Shall we close this topic and open a new one dedicated on needle insertion (it is a topic of interest of other devs on the forum).
BestHugo
HugoKeymasterHey @aryakarani
Could you try to add the following path in your environment:
export SOFA_ROOT=/path/to/SOFA export PYTHONPATH=$SOFA_ROOT/plugins/SofaPython3/lib/python3/site-packages
Hugo
HugoKeymasterHey @aryakarani
You should have python3.7 installed on your machine.
For Ubuntu, could you please run:sudo apt install libpython3.7 python3.7 python3-pip python3.7 -m pip install numpy
Best
Hugo
16 April 2021 at 00:37 in reply to: [SOLVED] SofaPython3 with v20.12.02 binary install on Win10 #19193HugoKeymasterHey @serkan-ergun
I am not so sure about Windows, but could you try to set up environment variable as:
– SOFA_ROOT=/path/to/SOFA
– PYTHONPATH=$SOFA_ROOT/plugins/SofaPython3/lib/python3/site-packagesHope this helps. Else @guillaumeparan might be able to help here.
Best
Hugo
HugoKeymasterHi @bill757
Interesting point. For now, the SOFA API only allows for frictional contact to use one homogeneous friction coefficient for all object. It’s in on our radar to allow for heterogeneous friction. We could see together how to implement this.
Best,
Hugo
HugoKeymasterHey @aryakarani
Have you loaded the SofaPython3 plugin through Edit > Plugin Manager > Add ..
Best
Hugo
HugoKeymasterHi @sergiopm23
No contraction model has been yet implemented in the open-source version of SOFA, but it would be most interesting! IMO approximating such a model with a constant forcefield sounds too approximated.
The contraction model must be implemented using the FEM as a forcefield in SOFA. An example of such a model FEM integration is available in this paper. Do you see how to proceed?
Best
Hugo
HugoKeymasterHi @steph,
First of all, welcome on the SOFA forum! Here, no need to apologize for noob-looking question, we are here for this! Second, it is really great to read that the YouTube tutorials are being helpful! Note that more advanced training session can be arranged for later π
NOTE: I can not access your errors / files.
Downloading SOFA binaries from https://www.sofa-framework.org/download/ or from https://project.inria.fr/softrobot/install-get-started-2/download/ is actually equivalent!
After adding in the PluginManager (as you described) the plugins (SoftRobots, STLIB) you will be able to run the scenes.
Now, about your problem with Python scenes, it is due to the fact the v20.12 release is the first version of SOFA including the SofaPython3 plugin. All the scenes in SoftRobots were not yet updated to work with python3. Two solutions:
– you use the SofaPython plugin instead (corresponding to SofaPython2.7) with SoftRobots
– or (more modern and useful for a close future) I can help you to update one python scene of interest for you to work with SofaPython3!Looking forward to hearing from you,
Hugo
HugoKeymasterPlease see here @olumide : https://www.sofa-framework.org/community/doc/programming-with-sofa/sofa-packages/
Best
Hugo
13 April 2021 at 18:51 in reply to: Error while building Sofa for SoftRobots plugin installation #19156HugoKeymasterOk you are therefore using the sources of SOFA and compiling them.
You might have cloned and compiled the sources of the SoftRobots plugin as well.Make sure to be on the v20.12 branch for BOTH SOFA and and the SoftRobots plugin. Otherwise, you will have version mistmatch. To check what is your branch:
git branch
Note that a shorter, simpler way to go and use the SoftRobots plugin is to use the binary (pre-compiled) available here (all-inclusive: SOFA+SoftRobots+STLIB+SofaPython3).
Best wishes,
Hugo
HugoKeymasterHi @olumide
You make me think that we should provide more insight about the CMake package organization (e.g. knowing which code is located in which package). We will work on this.
Best,
Hugo
HugoKeymasterDear @aryakarani
You need to make sure that the SofaPython plugin is well loaded.
Which version of SofaPython are used in your scene ?
SofaPython(2) or SofaPython3 ?Best,
Hugo
HugoKeymasterHi @olumide
What are you changing the SofaPhysicsAPI from a library to an executable project? I am not sure to follow you.
Regarding SofaGeneral, it is also a deprecated collection (see #1596). It must be replaced by the appropriate package (e.g. SofaGeneralEngine, SofaGeneralDeformable etc.) depending on which is needed. These needed SofaGeneralEngine*.so should be explicit in the CMakeLists.txt (find_package + add_library).
Best,
Hugo
HugoKeymasterHi @olumide
I think most of your errors relate to the PR #1609, removing the SofaCommon collection.
You can see here the consequence here in SceneCreatorBenchmarks.I hope this helps.
Best wishes,Hugo
HugoKeymasterHi @amir
Strange it worked with a the previous binary version and the sources. I will ask our release manager.
Best
Hugo
HugoKeymasterHey @akthetimes
I read somewhere that the team wonβt be supporting the SofaPython2 from the current release
Yes this is correct.
Thank you for posting your error. I don’t see from this where does the problem come from. Could you please tell us:
– the version of the Python installed on your Windows
– do you confirm that you downloaded the binary version v20.12.02 (from the SOFA website : download page) ?Have you checked the required dependencies here1?
Best
Hugo
HugoKeymasterCiao @eleonora
Unfortunately, with the SofaPython plugin (2.7), no binding was existing to trigger the SOFA draw process (corresponding to:
sofa::simulation::getSimulation()->draw(vparam, node);
).I guess this could be added to the SP2 API. But I am no master of python bindings π
Sorry about thisHugo
HugoKeymasterHi @sergiopm23
Interesting to see that muscle contraction is a rising topic.
The contraction of an object is a so-called active mechanical model. I guess some field will induce the contraction, and contraction law might exist to define how this field relates to contraction forces. This active constitutive law must be integrated using the FEM as the usual passive part (i.e. elasticity).
One classical model is the Hill muscle model, but I guess many others do exist. I know a team implemented a part of a similar contraction in a private plugin.
Best wishes,
Hugo
HugoKeymasterLet’s close this topic then, and focus on the new one.
Best,Hugo
-
AuthorPosts