Combination of IK en simple constraints possible?

A client came up with a animation problem which looks simple but apparently it’s not… (at least not for me :sweat_smile:).

How to get this physically correct. It looks like a combination of IK (connection between the connecting piece and the 2nd ring) and a simple constraint (look along path of the 2nd ring).

Is that possible in Bongo 2?
What I am missing here?

Thanks, Tobias

Constraints.3dm (379.7 KB)

@Joshua_Kennedy sounds like easypeasy to do in current Bongo 3, right?

Hi Nathan, any ideas to tackle this in Bongo 2?

I’ll leave that also to @Joshua_Kennedy, and probably @Luc can help. That’ll most likely go to tomorrow, it is already way past bedtime.

Oh ok. Never mind. I just thought it’s 13:00 right now in Seattle… center of the Rhino world :grinning_face_with_smiling_eyes:

Well yes, but the Bongo crew is Finland + Belgium (:

Oh ok. I see

It’s not that simple indeed. Have a look at the file: Constraints 001.3dm (323.3 KB)

If more explanation is desired: happy tomorrow :zzz:

Hi Luc,

Whow… what an elegant solution. I was close but I missed some extra steps. I tried to “Join and Constrain” the 2nd ring directly to the connecting piece and the curve. But when I did, the Constrain to object was greyed out… (don’t know why).

What I still don’t know is where the Z-axis rotation of the 2nd ring is coming from. When I constrain the point (Object 565) to the curve there’s nothing like a “Look Along” option…

greetins, Tobias

Good day Tobias,

The interface of the “Constrain to object” option is indeed misleading. Although the radio button and text are greyed-out the option is activated once you click the “Select target object” button.

As for the ‘Look Along’ option in the IK constraint. Indeed there is none. The IK ‘constrain to object’ can spin completely freely. In Constraints 002.3dm (381.0 KB) I installed the (apparently) basic IK chain for this structure. You can see that this results in the ring not following the curve. You probably discovered that yourself.

To get the Z rotation of the 2nd ring correct an additional point is needed. Model Constraints 003.3dm (399.0 KB) builds on the 002 version. The additional point is positioned a tiny bit behind the 2nd ring’s pivot, made child of the 2nd ring and IK constrained to the curve path. The 2nd ring itself is allowed to turn relative to its parent (the rod) by making it not only a Constraint but also a Hinge.
It’s a bit like adding a (tiny) ‘constraint header’ to the ring to simulate a Look Along. Of course purely theoretical this mock up will not be exactly tangential to the curve.

In the model 001 that I posted yesterday night the approach is identical but worked out a little differently. I now also noticed in model ‘Constraints 001’ that the pivot of ‘Objekt 18’ is somehow moved away from its original position. The sandman must have bothered me.


Hi Luc,

Yeah, I see what you mean, and where the Z-rotation of the 2nd rind comes from. But since at least some kind of distance between the points is needed, it’s not possible to keep the center of ring2, or the middle of the rod, on the curve. Means, there can never be a 100% physical correct solution for this problem in Bongo 2, right?

Now I wonder if things have changed in Bongo 3? I’ve never tried it. Like Nathan said… it’s easypeasy to do in current Bongo 3. Is that the case?

However, thanks a lot in showing me such a great solution. I learned a lot by trying to solve this. I also subscribed to your YT channel. Excellent content there!

greetins, Tobias

On the contrary, the center of ring2 (and the middle of the rod) is exactly on the curve. All the time. The center of ring2 is namely ‘constrained’ to the curve. Take a look for yourself both in model 001 as in 002.
The distance of the auxiliary point (no matter how small) merely makes that the angulation of ring2 is not exactly tangential to the curve. Not exactly means in this case an offset of 0.941°

The curve in this model is not a “physical” object. When you would try to animate this ‘machinery’ with Bongo’s 3.0 physics the curve should at least be given a thickness.

When it is like a wire the rings would drop down on it.
When it is like a rod having the same diameter as the inner diameter of the rings everything would get stuck once a ring approaches the curve.
What is the purpose of this model?

In Bongo 3.0 the use of newcomer ‘Connections’ makes it far easier to assemble a mechanical structure.

The main benefit is that using Connections no longer requires to conceive a hierarchical structure for the objects. However the joining elements are very similar to those of 2.0’s IK. The “Grasp” connection is the equivalent of IK’s ‘Constraints’ and has the same potentials. Hence no Look Along there too.
BTW Unlike a Simple constraint a IK constraint (or a ‘Grasp’ in 3.0) can use a point, a curve or a surface as target. A ‘Look Along’ feature would fairly complicate matters.

Using Bongo’s 3.0 Physics can be a great help to simulate mechanical operations but then it’s necessary to have al the components bodily correct (as illustrated above).

But please take a peek. Bongo’s WIP is free for anyone with a 2.0 license.

Have fun and stay healthy,