Can Kangaroo be used to check Equilibrium Status of Stacked Boxes?

Hi everyone,

I was hoping if there is any way to check for equilibrium of geometry within Rhino… I haven’t tried anything yet, so this is more of a “what direction would you take?” thread.

I have multiple models of stacked boxes. Assuming the union between boxes is unbreakable, how can I check if the geometry will fall or stay static? The first thing that came to mind was Kangaroo, but I searched a little bit and didn’t see any examples of it being used for equilibrium purposes…

Thanks for any insight
Shynnn

So it’s a gravity vs. balance problem? If all the boxes are the same size, you can take their centres and just average those out to get the centre of mass for the entire construction.* If that centre of mass projected onto the ground is inside the convex hull of the points where the shape touches the ground, it shouldn’t fall over.

* I think you can. Maybe averaging is not the correct operation though. In any case, Rhino does allow you to combine/calculate the centre of mass for a collection of objects.

1 Like

stable.gh (33.4 KB)

1 Like

stable2.gh (31.0 KB)

If you want to watch it fall over, you can do it in Kangaroo too like this, but I agree with David - it’s far simpler to just check the center of mass. Here you have both so you can check they match.

1 Like

Ah, too slow! Oh well, I adapted Dan Piker’s example from here, might as well post it

RigidBodyWithGravity.gh (42.4 KB)

1 Like

Also - as David says, if all cubes are the same size, you can just take the simple average of their centers to get the center of mass for the whole shape, but if they are different sizes or densities you would take a weighted average of the individual center points, weighting each one by the mass it represents.

1 Like

Great, thank you guys! Will look into all of them.

@DanielPiker could you please post an image of the definition, I haven’t made the switch to Rhino 6 yet so it doesn’t seem to be working…

That file was saved from Rhino5 - you might just need to update Kangaroo