Hello all and @DanielPiker,
I have been working on this dome shaped pavilion for a few months now with the goal of compact packing circles along the dome face. Through correspondence on here as well as a variety of scripts from previous threads on this topic, we have managed to get the circles to pack within our given shape. However, we now are not able to get the script to recognize the boundary of the shape. This is mainly an issue along the fingertips of the dome structure and the boundary edges, as you can see in the photos. We have tried a variety of Grasshopper scripts and have had little success. Wondering if there is a Kangaroo solver for this that could help us out? Rhino8 file as well as current Grasshopper script attached.
updated_dome_033126.3dm (9.9 MB)
Circlepacking_tangent_corner (1).gh (33.6 KB)
Hi Carson,
In general it is possible to create a compact circle packing of any given mesh connectivity tangent to a given smooth boundary curve
(well strictly speaking, it is a tangent sphere packing, but when the surface is smooth and the circles relatively small, it can be very close to tangent circles).
This is what we get when turning off the Rod and scripted CornerTangent goals in this definition.
However, once we introduce the additional constraint that the circles in the corners are tangent to both parts of the boundary curve either side of the sharp corners, there will generally not be a solution. So it’s not simply a matter of tweaking strengths and introducing additional goals - we’re trying to force something that usually won’t be possible. The more sharp corners we’re trying to get this double tangency at, the more problematic it becomes, because the packing gets less free to slide around the boundary.
By altering the mesh connectivity it might be possible to get more of the corner circles closer to touching both sides of the corner.
1 Like