algorithmic modeling for Rhino

See the video on this page:

I want to make similar random, or not random, curves in Rhino to use for the same purpose as this video, CNC toolpaths for textures. 

any ideas on the best way to figure this out?


Views: 9474

Reply to This

Replies to This Discussion

hallo all :)

also a very interesting tool is k3dsurf:

Demo here:

and formula:
# T.sauermann:
F (): (1 * (sin (1.6 * x) * sin (2 * y) + sin (2 * y) * sin (2 * z) + sin (2 * x) * sin (2 * z)) + 1 * (cos (2 * x) * cos (2 * y) * cos (2 * z))-x +0.2) +0.9
[x]: -1.6, 3.8
[y]: -3.2 * 3, 2.6 * 3
[z]: -3.2 * 3, 2.6 * 3

did anybody actually milled piece using this software? I have not but I think it would look awful, especially on wood.
Hi, I asked this exact question here a while back.

I got sidetracked with other things but am still interested in pursuing it. I think GH and Rhinocam is perfect for duplicating these sorts of toolpaths but it's a little over my head to put it together completely. I thought a good starting point might be to create a definition for 1 sin curve with these parameter sliders

fixed or random with range ex: .25" - .5"
amplitude width
fixed or random with range
amplitude height
fixed or random with range

Once I had this I would try to repeat the lines - each with separate randomness but without having to
have separate sin components. You might have 200 plus curves in a 4 x 8 sheets so you would want to keep it very simple. Also, you would want the curves to be connected at alternating ends so the tool zig zags back and forth.

After that I would tackle trying to get the lines to follow a flowing contour as in the original program

I'm away from my Rhino right now but when I get back I'll give it a shot. Hope fully we can figure things out from there.

Jaroslaw, these patterns are a little flashy for residential use but work well for commercial interiors like bars and restaurants.


i don't have the definition at hand right now. the algorithm is something like this.
- get isocrvs of a give srf.
- devide them (get points)
- displace even points of even isocrvs and odd points of odd isocrvs
- use interpolated curve to generate toolpaths crvs
- feed them into rhinocam for an engraving operation. (3d crvs work even though it is a 2,d axis operation, thanks taz!)

works great so far.
i only wish i wouldn't have to hand-pick reference the new set of crvs everytime i bake, as mentioned before...
looks great!
let me just clarify way you did it, ball end bit tip follows curve or ball end bit fits between two curves in engraving operation?
ball end mill follows curve.
basically you create the toolpath yourself. rhinocam only has to add transfer movements, simulate and post-process. apart from the materal removal simulation this could also all be done by the definition i posted above.

i found a link to similar projects at iaac in barcelona:
just took a brief look. they did quite a lot a interesting stuff.
Nice work.. it looks like you used a flat surface for the 2 patterns on the right? Did you use a GH definition to extract the isocurves?
that link to the iaac project is broken. I know the project you mentioned, and can't seem to find it on there.

I ended up using Grasshopper for a lot of different milling operations in rhinoCAM, using the "engraving" method. You can see some of the results in Local Code Denver Biennial photos I've posted. It works very nicely. I even ended up using it for drilling operations, because it was so much faster and simpler.

I would love to find ways to recreate and tinker with the different 3-axis finishing paths in GH. Any ideas on how to drape a finishing pattern over different geometry?

This particular equation does not create a random wave, It contains no RND function, and I don't know if an RND function is available in VB script? You will also require Millipede and Weaverbird Addons.







  • Add Photos
  • View All

© 2020   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service