HELP - Kangaroo IK wont work

Hi guys, @DanielPiker,
I’m starting to dig into Kangaroo IK/RigidBody but my simple definition isn’t working.

Could you help me?

Rhino file : 20200424_IK_trial.3dm (737.4 KB)

Grasshopper definition: (15.7 KB)

20200424_IK_trial2.3dm (729.2 KB) (8.3 KB)

Hi @skysurfer,
The ‘Plane’ input for rigid bodies allows you to set a base frame for that body. However if you do not input one, it defaults to an XY oriented plane at the centroid of the body, and for most purposes this is best.
The position and orientation of that plane is what gets updated during simulation.

You had all 3 bodies with the same base frame, which Kangaroo interprets as you wanting them to be locked together as a single rigid object (just like when 2 goals contain an identical point, Kangaroo treats that point as one particle).

Also, at the joint axes you had different pairs of points for the 2 bodies that joined there. These points do need to be the same - it is because the bodies share 2 points that it becomes a hinge.

1 Like

Here showing the actual frames of the rigid bodies as they update.
The attached points and display geometry are defined relative to this plane. Hopefully this makes it clearer why each body needs a different plane.

(I also showed here one way you could add another axis) (17.8 KB)

Also - a general tip for hinge joints defined by pairs of shared points - spacing the points farther apart makes it easier for the solver to converge quickly.

@DanielPiker Thanks.

If I would like to have a piece constraint to a curved movement should I need to use the OnCurve Goal to make points following a specific path?
I want to create a sliding mechanism.


yes (10.6 KB)

Also, if this is acting purely as a planar mechanism, I should point out that this setup could also be simulated even without the rigid body components, just using length goals, and keeping points on a plane, then orienting the geometry to frames defined by these lines and their perpendicular.

1 Like

Amazing! This will be exactly my next question.
To be fair is the exact goal I wuold like to reach.

So No rigidbody, only LenghtGoal and point, right?

Yes - much simpler: (258.7 KB)

1 Like

Hi Daniel,
I’ve another problem with this mechanism but I can’t share it so I sent you a private message here on Discourse.
Did you saw it?

Any chance you can help me?


Hi @skysurfer - Yes, I saw it. I’ll take a look at the file now.

1 Like