Circle Packing in Regions

Hello all,

I searched through lots of topics before I started this topic because I did not see any answer to my specific problem:

The points in each region are centre points of circles. These circles have a radius depending on its region. The K2 should now pack the circles within each region but also the circles should not intersect to another circle from another region. All I got is packing in only one region or the whole surface. Does anybody have an idea?

Hendrik (52.5 KB)

The easiest way to do this is probably to create a single welded triangulated mesh with colours representing the radii you want at each location and feed this to the ImageCirclePack component: (17.1 KB)

1 Like

Hi Daniel,

thanks for the answer. That helps me a lot!
Can you explain me what the Colour HSL component does so that i can edit my file the same way?


Mesh colour is used here as a convenient way to associate a scalar value with each vertex of a mesh in a way that can be interpolated to get a value at any point on the mesh.
The ImageCirclePack goal actually uses the R value of the RGB colour, remapped to the range of the Min-Max input values of the component.
Actually, thinking about it now - it is probably clearer to use fRGB here instead of HSL.
Here’s an updated file (16.8 KB)
So for example, if you have Min=0.1, and Max=1.0, a circle at a point on the mesh with fRGB colour (0,0.4,0.34) will have radius 0.1, while a circle at a point with fRGB colour (1.0,0.2,0.4) will have radius 1.0.

I tried this approach only briefly before giving up :frowning: somehow cant get the fixed radius part to work with it)
Extruded Circle Packing from a surface similar problem that i tried to solve but in a roundabout way.