Inflate ball


(Gabriel Ganzarolli) #1

Hey guys, i trying to learn kangaroo, and one of the exercises im trying to complete is this: inflate this ball but keep it hold by the ring arround it, so it performs a deformation. But i just cant make it work properly, can someone hellp me? thanks.inflateball.gh (41.2 KB)


(P1r4t3b0y) #2

Hi @gabrielganza,

I’m by no means an expert in Kangaroo2, but I came up with a rather simple solution to your problem.

Instead of generating a NURBS torus, converting it to a mesh and trying to collide it with a mesh sphere, I simply look for the sphere vertices to keep fixed (that would be kept stationary by the ring) and define those as K2 point anchors. More or less anchor points can be selected with the SelectionTolerance slider.

inflateball_V2.gh (21.9 KB)


(Pfotiad0) #3

See attached as well

K2_Inflate_EntryLevel_V1.gh (11.7 KB)
K2_Inflate_EntryLevel_V1.3dm (209.3 KB)


(Daniel Piker) #4

I agree with @p1r4t3b0y above that it is much simpler to do this not with collision between the 2 meshes but by anchoring a ring of points.

However, if for some reason you did need to do it with collisions, your original definition was not far off - the main thing that needed changing was to switch the ‘Unidirectional’ option on in the collision goal. This makes sure the ring is a passive collider and does not move itself. I also increased the thickness of the ring a bit - if the mesh is too coarse relative to the thickness of the collision object, they can pass right through each other.
inflateball_collide.gh (35.2 KB)

edit - just realised this is just what @PeterFotiadis showed above.


(Gabriel Ganzarolli) #5

Its perfect folks, thank you so much!