I am very reluctant to rely in a DUPLICATE THREAD. Just this once…
Using an Anemone loop: (yellow group) I can’t say this is the best way, it’s certainly not the only way.
edge_holes_2021Oct27a.gh (65.9 KB)
P.S. To get space between circles on the outer edge, replace the “2” text panel with a slider (‘EdgeF’).
edge_holes_2021Oct27b.gh (66.1 KB)