Circle packing on a half sphere with a hole

Hello everyone,

This is my first post here, I need help to create a specific structure using circle packing.
I will be very thankful if someone is able to help me.

I want to model the same structure as the “Packed Pavillon” (see image).

I followed a tutorial on YT but the “teacher” was not making the big hole for entry as they did for the Packed Pavillon, in the tutorial is it not a complete circle, but I want to do exactly as the Pavillon, with a complete circular hole for the entry.

(The tutorial :

I tried, but there is an issue with the definition because when the hole is entirely on the surface noting is working anymore.
I tried many different things to manage that problem but I can not figure it out.

When I will be able to solve this, then I want to have 6 precise circle radius for the circle packing, and I’m not able to do it for now, but it will take place in second time… :slight_smile:

You will find my definition just bellow.

Thank you very much for your time and your help !

Valentin (41.4 KB)

If you want user defined radii, then don’t use the remeshing and tangent incircles approach shown above, use collisions, more like shown here:

1 Like

Thank you very much !
That works very well !

Do you know how I can set like 6 different radius for all the circles ?
Because in the definition it uses a random component which operate in a specific domain.


I tried to combine the methods you share in that post : Packing circle of different radius - #4 by laurent_delrieu
and that one also : KANGAROO2 Circle Packing - Different sized circles - #2 by Joseph_Oster

But I still can’t figure out to set 6 user defines radii and populate the surface of the dome with a random number of each radii circles. I also tried to set a precise number of each radii but I’m still stuck…

You’ve been very helpful, I thank you very much.
If you have an idea how to do that I will be really thankful !

Valentin (108.2 KB)

1 Like

I used a Gene Pool for the radius (here 5) and a gene Pool for the the number of circle for each radius.
I added a multiplication to multiply radius from 0.1 (could be 0.7) to 1.
Play with the slider and the number of radiuses and also the toggle. It is not a one button solution but it seems to work. (109.7 KB)


It is working perfectly. Nothing more than a BIG THANK YOU @laurent_delrieu !

I could not have done that part alone :sweat_smile:

So impressive is it perfect ! :star_struck:

1 Like

Hello !

I have been very happy to learn on that project with you all and I have one more question about this same file.
I wanted to use the “Grab” component to move some of the circles from their “default” position but I don’t know if I am using it in a wrong way, but it’s not working (see image below).

I tried to connect the Grab component to the Entwine component just before the Kangaroo Solver but I cannot move circles by hand. I was looking at was has been done in that post : KANGAROO2 Circle Packing - Different sized circles
And here : Kangaroo2 grab and lock function.

Do I have to insert something in the C# Script component to make the Grab component work ?
There is the file just here :
Parametric (32.4 KB)

Thank you very much for your response and your time !

That should work just as you have it.
The only thing I notice is that the geometry is large relative to the default grab range, so you’d need to click quite precisely on the points. If you increase the value in the Range input of the Grab component it would make this easier.

1 Like