algorithmic modeling for Rhino

Hi! I´ve been trying to figure out how to create a circular pattern similar to the one used on the Nest smoke detector:

I´m trying to create a similar pattern on a 3d object I made (below). I can't figure out a way to conform the circular cut  pattern within the boundaries of the surface marked in yellow. I was only able to create a cut pattern using the outer edge as an attractor curve, but still, it was based off an UxV grid, so the holes didn´t conform nicely near the rounded edges or the extruded pipe in corner... 

If anybody can shine a light in the right direction for me, I would be very gratefull!


Views: 3379

Replies to This Discussion


I tested it with a log spiral, but holes are indeed on an arc of circle. 


Here a "brute force" version not optimized with arc circle instead of spiral and 2 logics for the radius of holes.

Hope it helps, beware of the number of rotations it could lead to long calculation, put a dam if necessary. 


Nice! Thanks a lot Laurent! Since I'm new to grasshopper, I'm gonna take a look at your definition and try to understand it and adapt it to my shape! o/

Here is a third solution that allows to have constant minimum distance between the circles/disks. 


To my eye, it appears that the next pattern is using discrete hole sizes, made by, for example, 4 or 5 different drill sizes. So, if you takes Laurent's results, take that series of holes, then assign these to 4 or 5 ranges of hole sizes, then that might be closer to the next pattern. Foe example, all holes 0.090 to 0.110 diameter get made by a 0.110 drill, 0.111-0.142 get made by a 0.125 drill, and so on.

Thanks Mark! I´ll test that out also!






  • Add Photos
  • View All


  • Add Videos
  • View All

© 2021   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service