algorithmic modeling for Rhino
Hello all,
I am trying to use Kangaroo to do a bit of sphere packing, using different sizes of spheres related to the required program areas. I have seen some examples of 2d circle packing, and I've tried to translate this into 3d spheres, but I can't figure out how to set the desired sizes and prevent overlapping. Any advice?
Thanks,
Bill
Tags:
Hi Bill,
I haven't taken a look at your files, but I can give you some guidance based on a system I built a couple years ago for this very purpose.
First you will want to create gravitational forces between the sphere centerpoints. Then you generally want to create a separate force that consists of springs of a very high stiffness between centerpoints, with a length that represents the sum of the spheres' radii. This will prevent collisions, although you will find that relaxing the stiffness will prevent the system from getting stuck in sub-optimal configurations.
You can see a video of the system I built and some discussion on the topic here:
Marc
Hi Marc. Do you possibly have a tutorial on how to create this process? Or even a sample file? I understand how to have two spheres interact without crossing using Kangaroo, that is by defining a rest length. I'm curious as to how you can have multiple spheres of different sizes interact using the SpringFromLine tool without having their surfaces cross.
Welcome to
Grasshopper
© 2025 Created by Scott Davidson.
Powered by