algorithmic modeling for Rhino

Hi, I'm trying to replicate the effect show in this image:

I've created a field of points and then manipulated their z-movement based on the strength of the mag-field at those points. However, the center of each "wave" is not smooth or consistent, like here:

I've tried bumping the DPI of the underlying grid thinking it was a problem with that, but it just makes the problem more acute. The other option I have considered is cutting the centers out and re-modeling them separately, either by hand or a different definition, but that would be my absolutely last resort.

I'm attaching my definition, and any help you guys can give me would be greatly appreciated.

Views: 9086


Replies to This Discussion

I think you can make a better preview : 

You can also try to use sin equations like here

or something simple like that, multiplication of 2 sinus wave. Here with a mesh but could be a surface


See also here :

Search with ripple grasshopper3d for more references. 

here is a script that is making the finer grooves.

The first thing is making the grooves. So I took groups of 4 points two for the crest two for the bottom, they are squeezed and translated(see image)

After that it is attractor and surface from points. 

A difference with interpolate or not with component "surface from points".




Laurent thanks so much for your input. I think there was a misunderstanding with my original problem, as I wasn't looking to get the grooves shown in the physical sample of the waves, as those are created by the physical bit of the CNC as it follows the tool paths exported by Rhino, but its incredible that you wrote a script to mimic them! Looks amazing, and definitely something I'll be exploring more.

The waves in your image (aside from the grooves) are a result I had come acros before, but they don't quite have the effect I'm looking for. The forces are being added at that specific point and create that interference, whereas I'm looking for more of that push/pull effect created by mag fields.

I didn't answer exactly but I found that better preview was a not too bad answer. If you want better resolution near the magnet it must be possible to make a more dense mesh near them without changing the number of points. So you must first attract points near attractor and after apply magnetic field.

But is this will be useful in the image attached, how can we get such an effect especially where the wall and ceiling connected...see attached image?


Just rotate some parts of the pattern that is a simple sinusoid. 

Thanks Laurent for the reply...

Indeed, I tried 1 point attractor, subdivide the surface then moved the points to a certain offset value affected by the force using graph mapper and created a ripple surface then I projected the lines on the resulted surface and loft it and extrude it with a thickness....the problem is that when applying same process on the second wall it will not succeed, I took in considerations the vectors should be changed but even though, the loft will have a problem resulting crossed surface

I attached Rhino and GH files


Not too difficult, you will have to learn datatree and also what is vector, a normal, a cross product ...

I use Rhino 6 so you will have some warning, I put a big image of the definition if there is a problem. 


Wish I had Grasshopper when I was a kid.

I'd like to see various animations since it's so slow to calculate 60K points that a slider won't let me play around.

You are right it is too slow to use sliders. I use slider because they are more practical than other numeric box, panels ... I think a mesh is used instead of surface it must be far more fast. So sliders will be useful to explore patterns, not grooves because they require many points.






  • Add Photos
  • View All


  • Add Videos
  • View All

© 2022   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service