How to use image sampler to get this effect?

Just like this picture. I am a beginner using GH and very interested in image things. I learn some image method from the discussion in this forum (thanks a lot!)but I can’t find any clue to make this effect. Is it about Fibonacci series? The difference from manalisa image is the dot size at outer ring are getting larger and the pattern is base on spiral. Who can make the script?Thank you!

The first is more a circle packing (there are also lot of example) and the last is just concentric circle.

Come on you can surely do the last :yum:
if there is n concentric circles, separated by a distance dx, what is the number of circular dot on each circle. Knowing that image sampler default output is within a square with a corner at (0,0) and the other at (1,1). Where is the center on the image ? What is the radius of the greater circle ? Basic math ?
I used mesh instead of dot. I have always big problem with dots display !!!


Thank you laurent! It really helps. I make it follow your steps. Pls see the picture below. Actually I made this effect by using AI plugin before :sweat_smile:, The advantage of GH is the dots in this image got central points of each circle. And AI filter just got outer curve.
However I am still confused of how to change the outer ring circle to make it bigger gradually than center like the pic below?

use force fields

There are many ways, here a less simple using Kangaroo I used a custom mesh to make a radialm gradient then circle packing of Kangaroo then Image sampler.

[ImageBasedCirclePack Daniel|attachment]ImageBasedCirclePack Daniel (182.1 KB)


With a reverse image search (often helpful if you are trying to find how an image was made) I saw this page where there’s a post by the original creator of that image:

they say:
“I distribute some blob positions so that they are more densely distributed in the center of the image. Then I draw a circle at the position whose size is proportional to the grayscale of the underlying image in a region around the blob position.”

So just what Laurent shows above
If you want dark dots on a light background, you can also subtract the value from 1 like this


wow! it is awesome, Thank you so much! I am trying to use GH to apply to DIY some art drawings, I wish I would have all your brilliant knowledge.
Can I ask another image question in this post? so greedy… :rofl: :rofl:
as below, I believe that two algorithm are different, but I don’t know how to write the script. first, create the spiral then pick the gray value in the image sampler to define the width of spiral? but I don’t have any idea about the second one.

if you are not available just forget this question :grinning:, thank you for your time for the circling question, really appreciate it!

Use Daniel advice, reverse search !!

and so on
You can go on old Grasshopper forum
I also put links on my Instagram

Thank you all for contributing to this fascinating thread.

I have a question that I will try to search for the answer myself, but I have another question that a search would not help, and that is, when I recreate Laurent’s first Mona Lisa image, I am getting dashed lines instead of solid, between divide curve and mesh sphere ex components, can anybody tell me what I am missing?

Thank you, I found this post before but the links there are not available. The effect of Fibonacci in second pic in that post is amazing!

Fortunately I can use Ps Ctrl+I to invert image before using Laurent’s solution now :laughing: :laughing:

1 Like

Post a screen shot please, I don’t understand if it is a missing component, a rhino version or whatever problem.

The most efficient is to use Graph Mapper so you can play with the curves not in PS in GH

1 Like

In fact I can make the lines solid if I flatten points output, but I don’t see that on yours, so I’m curious what is different.

Yes, Got it! :grinning:

Just that

1 Like

… and here something “for the lulz” :rofl: (146.3 KB)

Exponential slider at the start:

Edit: I’ve thought i did a mistake on “xy” input formula… an yet… omg!
(Pi/Phi) mod Pi = (Pi*Phi) mod Pi … why so?
Edit2: Oh ok… Phi = 1+(1/Phi) … still out of my comprehensions …


God I love GH and this forum! Thank you! :+1:



I really like the program above. I should make some changes to it. Unfortunately, I’m very hands-on with the software.

Can I state that I can have a size 14 circle shape? 1mm 2mm 3mm… 14mm.

Also, where can I set so that the circles don’t touch, let’s say there is a gap of 2 mm between them.

And will I be able to do it so that the entire image is not on a circular part but on a rectangle?