Obviously, you could animate something like this by hand but is there any software on Linux meant to simulate this kind of mechanism?
I really like motiongen.io for quick mechanical sketching
Making a Strandbeest?
Would maybe a FreeCAD assembly [3] be what you’re looking for? Here is an example tutorial on making an assembly [1]. You can also animate an assembly [2][3.1].
References
- Type: Video. Title: “FreeCAD 1.0 Assembly in 30 minutes Beginners Crash Course / Tutorial 2025”. Author: “MangoJelly Solutions for FreeCAD”. Publisher: [“YouTube”. “MangoJelly Solutions for FreeCAD”]. Published: 2025-01-29T13:37:36Z. Accessed: 2025-09-18T07:54Z. URI: https://www.youtube.com/watch?v=p2yDGlv5wI0.
- Type: Post (Comment). Author: “Workshop_Notes”. Publisher: [Type: Post. Title: “FreeCAD 1.0 Assembly workbench joint variables”. Author: “zultron”. Publisher: “FreeCAD”. Published: 2024-11-30T19:32:15+00:00. URI: https://forum.freecad.org/viewtopic.php?t=92562.]. Published: 2024-12-01T09:32:38+00:00. Accessed: 2025-09-18T08:03Z. URI: https://forum.freecad.org/viewtopic.php?p=794940#p794940.
- Type: Text. Location: ¶2.
[…]They all use Python to animate the assembly.[…]
- Type: Text. Location: ¶2.
- Type: Article. Title: “Assembly Workbench”. Publisher: “FreeCAD”. Accessed: 2025-09-18T08:05Z. Published: 2025-08-17T18:19. URI: https://wiki.freecad.org/Assembly_Workbench.
- Type: Article. Location: §“Example crank and slider”>§“Drive the crank”. URI: https://wiki.freecad.org/Assembly_Workbench#Drive_the_crank.
You can do it just in the sketcher and get 90% of the way there with just sketcher constraints. You can also create a body with a subshape binder for each sketch line and use assembly and create an animation. You don’t even need 3d solids. I created a gif, we’ll see if it attaches properly to this reply…
Video:
Damn, what kind of referencing software are you using for writing this kind of comment? Looks pretty cool
FreeCAD is such a masochist’s tool ;)
I tried learning it a few times, but it’s such a royal pain compared to other CAD software.
Seems like a good fit for processing maybe?
wouldn’t you still need to write your own angle solver? this feels like the same thing as using pygame or something
Man, it’s been years since I looked at Processing. I forgot it exists. This could be a good option.
Wouldn’t you be able to do this in blender?
Yes, but I don’t think it really works well with multiple constraints like that.
You could probably do keyframe animation on geometry, but I think bones only do trees.
No idea. I’ve been meaning to try blender again at some point anyway. I’ll have to look into it.
Would second Blender. Plus if you’re planning on maybe 3D printing a model with certain gyroscopic properties it’s easy to export the model from there 😉
My first thought would be algodoo (formerly phun) via wine if you want an intuitive graphically driven 2d physics simulator/sandbox
I don’t know about installed software, but Open Constructor is a recreation of the Soda Constructor, which is what that animation makes me think of: https://peterfidelman.github.io/constructor/
And here’s another SodaPlay inspired tool as well: https://panoramx.ift.uni.wroc.pl/~maq/constructor/
Hope it helps!
This is basically rigid body dynamics. I am sure there are many libraries that can handle this. For example, this might help: https://github.com/projectchrono/chrono
Check out modelica open source physical modeling language and the rigid body model library https://openmodelica.org/
I’m sure that you could use MetaPost to procedurally generate a frame, then merge them into an animation.
A newer, similar language is Asymptote, and it looks like it has animation support.