Golf ball? Evenly spaced points on a sphere?

In other words, nothing exists in Grasshopper to create a polyhedron with and arbitrary number of sides? That’s a big WOW:frowning:

How about PopGeo on a sphere and then use Kangaroo to rearrange the points evenly?

This is way too much work for a trivial part of an unrelated model.

There is Facet Dome under the Mesh > Triangulation tab

If you want something symmetrical it makes sense to base the point distribution on a platonic solid.
I didn’t see a picture, but I’d guess that the 336 dimples would be arranged with 28 similarly arranged on each face of a dodecahedron (projected to a sphere)

1 Like

Quick Implementation with RhinoPolyhedra’s Dual Geodesic Icosahedron(Face count 312)+Catmull-Clack subdivision.


@Joseph_Oster my script is a reproduction of that
I preferred to put a number of face because it is better than a subdivision level.

I don’t don’t have the knowledge and skills needed for Kangaroo or “Catmull-Clack subdivision” solutions, if they exist without using Rhino commands. (18.9 KB)

A picture of a golf ball? Some images from Google are “fake” CAD efforts, clearly flawed. Even real golf balls differ widely in patterns, some using a mixture of different size dimples. Here’s one from Titleist:

Heh, heh. Looks pretty good but I already failed at RhinoPolyhedra today and prefer a pure GH solution anyway. The reference to Catmull-Clack may be useful if I wanted to go even deeper into these weeds (or this rough, so to speak), but all of this is very far removed from my project. I’m often willing to research tangential subjects but I’ve had it with this one for now. I want an an off-the-shelf GH solution for generating evenly spaced points on a sphere, at the very least. With that, I can make the dimples.

1 Like

Thanks @dale, I saw that one too and followed the link to RhinoPolyhedra. I thought I had already installed it but to be sure, I downloaded and installed it again. Restarted Rhino. But I’m lost in trying to use it or IcoSphere.


How do I invoke your plugins? Why is WatermanPolyhedron showing up when I have disabled it? (though as expected, I get this when I use it: “Unknown command: WatermanPolyhedron”) Where do ‘HugelPolyhedron’, ‘PentagonPolyhedron’ and ‘SchonhardtPolyhedron’ come from?

P.S. I found ‘MeshIcoSphere’ but again, can’t seem to control the number of faces or vertices?

There is some math that describes packing circles onto a sphere in the Rhino Python Primer, (page 61/62). Maybe that helps?

I’ve only used methods recommended by others to create a similar effect with Polyhedra & Mesh subdivision.
You can do it the way you want. It’s a personal preference.
BTW, what’s so meaningful about Pure GH way? Is it a kind of game with no plugin challenge?:wink:
Anyway, it won’t be hard to use Nurbs, either. It’s just that it takes more calculations…


I mistakenly replied in an old thread and am now prevented from re-posting my reply here…

I scrolled down that page and started to watch the video (out of desperation) and noticed a reference to this wiki page, which I carefully typed in by hand:
This topic does not exist yet

So searched the wiki for “rhinopolyhedra” and clicked the suggested link under “Matching pagenames”:

It goes here:

Endless loop! Wild goose chase. This has been a colossal and frustrating distraction.

I can’t seem to do it any way all. How pathetic.

Yes. To elaborate slightly, I’m not entirely opposed to plugins. Sometimes it’s the best or only way to get the job done. This morning I needed a standard hexhead bolt and nut so I explored and tried some things, found the GH solutions wanting and quickly settled on the BoltGen Rhino plugin. I got exactly what I needed quickly and moved on.

Evenly spaced points on a sphere (or other surface) is a common question on this forum that I’ve never paid much attention to as I didn’t need it. Devoting most of an entire day searching and failing to get anywhere close to my objective is quite annoying!!

I have no idea why suggestions from you and @dale don’t work for me?

I find it pretty interesting that there are asymmetric designs for the dimple distribution that can supposedly correct badly hit shots!

Optimal distributions of particular numbers of circles on a sphere is an interesting problem generally, as for many numbers the solution is not symmetrical, and for even quite low numbers there isn’t a proven optimum known. See the Tammes problem and Thomson problem:

(This is an aside though - if the aim is to model something that looks like a typical golf ball for a rendering, then I think several of the methods already posted above can get you there)

1 Like

I find it pretty interesting that there are asymmetric designs for the dimple distribution that can supposedly correct badly hit shots!

Same goes for the patterning on the club :smiley:




Here’s a circle packing on a sphere in the current Kangaroo: (9.9 KB)

It’s still not clear to me exactly what you are after though.
Is this literally for a rendering of a golf ball? or you want to actually make a golf ball? or is it a more general question for some other application, and if so what?

If the requirement is to have a distribution of points (or dimple centres) on a sphere, all at exactly the same distance from their neighbours, then this is only possible for 4,6,8,12 or 20 points (ie the vertices of the 5 Platonic solids).
If instead you only want approximately equal distances, there are many possible options depending on exactly how you define the problem.

If you want something symmetrical and regular looking, and don’t need to be able to choose arbitrary numbers of points, I think subdividing an icosahedron using Weaverbird is the easiest way to do this in Grasshopper, like what @HS_Kim showed above.


Thank you very much Daniel, this is wonderful, both as a “good enough” solution and a concise example of how to use Kangaroo.
Having this little gem early yesterday would have spared me a world of grief…

I am not trying to design a better golf ball. It’s more a general question, motivated by failure to locate a decent CAD golf ball as a trivial part of an entirely unrelated project.

Would love to try that but no such code has been provided in this thread. While I’ve had Weaverbird and Kangaroo2 installed for a long time, I don’t use them or know how, so casual references aren’t helpful. I’m not prepared to invest the time to “master” mesh skills just to get a golf ball for rendering. I don’t even golf! :sunglasses:

Even to reconstruct a model from a screen shot, which I didn’t have until your post this morning, is asking a lot at this point. I may get there but have other things to do.

To the extent that earlier suggestions depended on RhinoPolyhedra and IcoSphere, I tried very hard but failed to to invoke those plugins, and still have no idea why? (because I’m using R5?)
‘BoltGen’, a Rhino plugin/command that I installed yesterday morning, worked immediately but not so with these two.

For whatever it’s worth, I mucked around with your code a little, not changing the guts at all but adding a separate ‘radius’ slider to Circle because they overlapped slightly using the same radius supplied earlier to SphereCollide. Then added Pull Curve to get the circles onto the surface of the sphere and Surface Split to cut holes.
WARNING!!! Both should be disabled when manipulating inputs to Kangaroo. Aside: there always seems to be one circle left uncut… but that’s irrelevant to the primary objective.

I also added a "Round to multiple of "Platonic values" group. No surprise that 360 is evenly divisible by all five “Platonic values”.

Thanks again very much. Pretty cool. (25.2 KB)

Did you unblock the plugin before installation?

No. Though I’ve heard that mentioned before, I don’t know how to do it? I didn’t have to do it with ‘BoltGen’ earlier. I managed to navigate to the plugin folder in File Explorer but haven’t found a block/unblock option anywhere in ‘Properties’? And yes, of course I then searched the forum for help, to no avail so far.

This is ridiculous.

Without a doubt, Rhino/GH is the most user-unfriendly software I’ve ever used extensively!

This thread is the first time I’ve ever asked a question on this “new” forum, and didn’t ask many on the old forum either. The experience has been brutal, not for the feint of heart!

Some plugins that are provided as installer package usually don’t need to be unblocked, but most of the plugin installation instructions require unblocking .gha or .dll from window protection.(RMB pop up–> properties)

I already said I tried that. Are you trolling me? Exasperation has set in… :man_facepalming: