Need a help with voronoi please

Hello, I’m new to Grasshopper and I need some help. I have a Voronoi texture on a surface. How can I achieve the effect of the texture gradually dissolving into randomness from bottom to top? Thanks in advance.

Here is my Rhino and Grasshopeer files.
ask.3dm (547.3 KB)
voronoi structure 3.gh (14.7 KB)

the Rhino file and the GH file you posted have no references to each other:

I guess you will have to explain that with pictures and sketches

I guess that he means using variable density (according some rule/attractors/whatever) pts on a convex BrepFace (that belongs to a soild Brap … so the bool diff ops can work). Like this (“even” rnd pts) but with some more elaborated pt placement.


Thank you both, here are some “sketches” of what i mean.



ask.3dm (579.8 KB)
askgrass.gh (11.3 KB)

you can use something like this to “cull points with probability”

the geometry is populated with random points, then for each point you measure to the distance to an attractor curve (note: in this example the distance is linear, not measured along the surface…)

these values are remapped [0,1], graphed, and then used as comparer to random values in the same [0,1] range: this way, the graph defines the probability for a point to survive, based on its (linear) distance from the curve:

it becaomes easy to define custom behaviors, and if you want to shuffle you can just pick different Random Seeds

then you could use those points to Voronoi 3D and continue with the construction of the desired final shape:

askgrass_inno.gh (49.3 KB)


on a side note, you can use whatever you want in the graph… for instance if you don’t want to use “distance from attractor curve” but want to use UV values of Surface closest point (U or V dependeding on how Srf was created… you want the “vertical ones” :upside_down_face: ) gives you a different control?

by Reparametrizing the Surface you don’t need to Remap+Bounds anymore as values are already in the [0,1] Domain range

askgrass_inno_UVs.gh (46.8 KB)

2 Likes