algorithmic modeling for Rhino

I'm using a circle packing vb script, but i need it to do a few more things. Right now it populates a box with circles starting from the largest moving outward.  This is good, however I would like to be able to setup a min and max size of the circles. The only other thing I want to do is set the start point so I could move a point such as an attractor around to get multiple variation using the same size and number. The script is included in the grasshopper file below.

Any help would be greatly appreciated,

Views: 21451


Reply to This

Replies to This Discussion

Recursion? You can have nested clusters. But looping and recursion is something that needs to be solved separately from clusters.

No, the silhouette from multiple rectangles was for the border around the GHA icons on the banner. Though I suspect it's quite a useful little algorithm to have for making all sorts of filleted UI elements.

David Rutten
Poprad, Slovakia
I appreciated your help! thanks!

jungsuk ko
from seoul, south korea

hello David,

i am a beginner in grasshopper. I tried to use algorithm but i couldn't make it work. Can you explain me how? I set a circle in rhino for the outline but still nothing hapens.

thank you!

Hello David.

As many people tested, this code is no longer working in latest grasshopper. I have been tried to figure out reason but i still dont have clue. would you please offer a little help for this? thank you very much.


I just noticed the same thing. Changing the following line (114) from:


C.GetClosestPoint(point, ct)


C.ClosestPoint(point, ct)


did it for me.


Hi David,

I am trying to follow on of these scripts. Im very very new to grasshopper and im just not sure how to go about doing what i need to do I would like to do something very similar to what is seen on this video using 3 circles with fixed radius. They should create touching tangents and not overlap as seen in this video

So you think you could help me to know how they created that in grasshopper. I would be extremely grateful. :) 



The code above looks strangely familiar to me. Thank you, David for porting this to the new SDK.


Could anybody help me with a problem I am having with the circle packing.

I am trying to create a small tube like pavilion that is formed out of cones which will be its suport structure.

With the circle sphere packing used with the help of this post I got somewhat close.

The problem that I can't figure out is how to make sure every circle touches the next.

What I introduced was a upward working gravity(UForce) in the spirit of Gaudi's hanging chains.


Still I have the problem of some circles overlapping and some not touching.


Does anybody know a solution to this problem?


(I have taken in account that the circles which are overhanging the ridge won't be used)


hello everyone, I would make circles with defined sizes but with effect of attraction

any idea?

It doesn't seen to be working again


here is an updated version.









  • Add Photos
  • View All

© 2020   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service