Help using multiple attractor curves to effect circle scale

Hi there everyone,
Rhino + GH novice here.

I’m currently trying to make a lightshade for a linear pendant light, and I am wanting to create a cut out mesh of different scaled circles to accentuate the form where is it bending inwards.

I’m using a grasshopper def to place these circles over the geometry, using attractor curves to influence the size of the circles at different points on the geometry. Unfortunately I cannot figure out how to use multiple curves as my attractors, and choosing multiple just results in the same output as if I had used one curve. In my attempts to fix it, i’ve tried flattening the input of the curves going into the curve closest point component as suggested in another users post, but that hasnt helped me.

I’ve gone through this process just using just one attractor curve, so I know I can turn this into rhino geometry, covert to closed curves and make holes from them, but not being able to use multiple attactor curves is really messing with my output.

Any help is appreciated, i’ve attached both files. I have to get this finished today, so i’m stressing a bit.
Thanks in advance,

rhinoform.3dm (166.3 KB) (13.3 KB)

Use the pull point component.

1 Like

As @siemen says, Pull is a useful component. However the big question is whether you only want to pay attention to the nearest attractor curve, or whether all curves have a cumulative effect. The latter will probably require some judicious grafting and mass-addition.


By the way, that “poo” baking component in this definition. Is that a standard grasshopper thing I missed out on?

Ill give that a try, thanks Siemen. Also, the baking component is just something I named while I was stressing out (and forgot to edit) hahaha.

Ill try pull for sure! I only want to pay attention to the nearest attractor curve, so the grafting and mass addition wont be needed!

It’s the standard Geometry Cache component, yes.

1 Like

Mind. is. blown.

Aloha Jamie,

Cross-posting my reply from the old forum:

Here are three variations that take a different approach; they position circles on the original surface, ‘Pull’ them to that surface and use ‘SrfSplit’ to cut the holes. I have disabled the green group in all three versions because ‘Pull’ and ‘SrfSplit’ can be painfully slow (see the profiler benchmarks in these screen shots).

The first one shows the uneven distribution that results from ‘SDivide’ on this surface, with holes close together at the top/middle and spaced too far apart near the bottom edges:

The second one, using ‘SubSrf’, divides the surface in only one direction, then uses ‘Divide Curve’ on one edge of each subsurface, to space holes evenly. I used large holes to reduce their number so ‘Pull’ and ‘SrfSplit’ would complete more quickly:

Finally, the third version uses evenly spaced plane intersections (‘PFrames’) to get straight curves before ‘Divide Curve’, as in the second version: (16.7 KB) (22.3 KB) (23.4 KB)