Collider / Fill Surface

Hello everyone,

I am trying to fill the surface in the file with spheres of various sizes but even with different strength values in the strength options the spheres seems to overlap each other. Is there a way to avoid this and to fill the surface in a better way?

Alexandros
spheres.gh (17.6 KB)

spheres_radiusmultiply.gh (21.6 KB)
Try this - by adjusting the B slider, you can apply a multiplier to all the radii, to find one where they don’t overlap.
Another option that can give a compact packing (3-sided gaps between circles only) is to make a mesh and optimise using the tangentIncircles goal, though that doesn’t allow direct control of the radii.

Hello Daniel,

Thank you for your reply.
By B slider do you mean the ‘‘Ignore B’’ on the Collider component?
I tried it but it doesn’t do any difference.
Also tried to open your definition but it doesn’t open as it should be for some reason.

Is there maybe a way to replicate the ‘‘pull’’ component of Kangaroo 0.99 on such a surface with the version 2?

This slider in the definition attached to my last post:


The OnMesh goal pulls points onto a mesh.
What error do you get when opening the definition? Are you using Rhino6 and a recent SR?

I am using Rhino 5 but when it opens the attachment I only see this.

I see. Some components are different between 5 and 6, but you should be able to make this work by replacing the missing components:

1 Like

I understand.
Yes now it works just fine.
Thank you for your time Daniel.

Here’s the other approach I mentioned for a compact packing. This is only in Rhino6 though:


boundarytangent_compactcirclepack.gh (133.9 KB)

6 Likes

This looks great with seamless connections.
I should upgrade to Rhino 6 I suppose since there are more capabilities.

Hi Daniel,

Fantastic tools thank you. Is there a way to have an OnMesh goal for lines? Looking to use the Collider with spheres and thickened lines on a mesh but I cannot figure out how to have the lines constrained to a mesh. I am seeking something similar to this example image you have shown but would also like to have ‘pill shapes’ added to the collisions. Essentially is there a ‘Line-endpoint OnMesh goal’ or equivalent work around?

Thanks!

Hi @Jake_McLean - you can keep lines on a mesh by getting the endpoints of the line and using those in OnMesh.

1 Like