Attractor problem

Yeah, it’s tricky and probably more than the primer lets on tbh.

Essentially, if you get the vectors and then multiply them by this inverse power, it works. Bit more involved than I was expecting though tbh, maybe there’s a simpler way than this.

attractorPowerLaw_vectors.gh (13.7 KB)

John.

2 Likes

If you replace the Circle ‘R’ (Radius) input with the HexGrid ‘S’ (Size) input value so all the circles are the same size, you get a result very similar to what I’m seeing in my own efforts. A large “flat spot” at the center (average point?) of the attractor point cloud:

I’ve been trying to avoid that - without success so far - but I have other things to do… :sunglasses:

2 Likes

Indeed @Joseph_Oster, but I think the flat circles are fine right? It’s more the smooth transition between the individual objects that Samuel wanted to solve. If you invert the radius you get something similar to the original post I think. This is just my take, but personally wouldn’t use closest point when doing this because then you get the ‘Voronoi’ lines where one point jumps to a different attractor. Maybe there’s a way to get it to work with the closest point, but anyway, back to work as you say!! :sunglasses:

2 Likes

I hear you @johnharding, you’re on the right track. I immediately abandon the closest point approach when I started to work on smoothing the transitions but hoped for something different, where flat disks appear only under the attractor points and nowhere in between them. The surface directions of the disks would flip at those ‘Voronoi boundaries’ but they would be ‘edge on’ from above. Only a mirage, perhaps?

Looking again at the third panel of @samuel.ryu’s “trying to achieve” example, it looks like the disks might be edge on at the attractor points and flatter in between? Same problem though.

2 Likes

Indeed, they flip when they switch to the other point. I guess you’ll never have a consistent distance between points for the general case, so it’s difficult to adjust to avoid some sort of seam.

I really must do more work, but this is a little additive! I think we’ve pretty much exhausted this thread :wink: However, if you align ellipses along the vector field for the definition I posted above you can avoid the flat areas in between. A bit like pollen grains aligning themselves in a stream (kind of!). Changing the power changes the influence over the vector field, it’s actually kind of fun to see it changing into the Voronoi as the power increases, in this case from x^-1.5 to x^-2.5.

attractorPowerLaw_Pollengrains.gh (10.8 KB)

pollen

Right, dinner time now…

John.

4 Likes

This turning into the Voronoi as the power increases is a nice property of Shepard interpolation
The weighted average component can also be handy for this sort of thing


shepard_ellipses.gh (28.2 KB)
image

7 Likes

Beautiful but only 2D ellipses, not the 3D vector oriented circles called for by the OP (@samuel.ryu ).

2 Likes

Ah, didn’t see that. It has the plane, so in that case simply rotate the circle about one of its axes instead:

image

shepard_ellipses_rotate.gh (43.8 KB)

11 Likes

That looks good, especially with a few changes:

  • Use DePlane ‘Y’ axis instead of ‘X’ to rotate the circles.
  • Change the second Wav (Weighted Average) 'I input slider from 0.755 to 2.0.
  • Change the slider connected to the Ins (Insert Items) ‘I’ input from 0.081 to 0.070 (or lower - minor)

I’ve never used Wav (Weighted Average) and will have to play with it to understand it. Clever!

Two things I noticed:

  1. There is no circle/disk below each attractor point because those points are Null, due to “Null Vectors”.
  2. When the attractor points are moved up (or down) per the original post, weird things happen.
2 Likes

Thank you John, really appreciate your help.

2 Likes

Thank you Joseph!

1 Like

Thank you for the explanation and definition.

1 Like

Thanks HS_Km!

1 Like

Reminds me of https://www.fenellaelms.com/wall-mounted

3 Likes

fenellaelms.gh (7.5 KB)

6 Likes

Hi,

Every other members already provided their wonderful solutions to your query. Recently I downloaded this plugin called Tundra. I open the fist example file, it has everything you are looking for… if you wish give it a try.

Cheers,
BVR

2 Likes

Plugin link

1 Like

Thank you for the recommendation. I will take a look. One of my colleague suggested Nudibranch plugin. [https://www.food4rhino.com/app/nudibranch#downloads_list] it allows you to control the fall off of the points individually.

interesting!

1 Like

CurlNoise.gha (27.5 KB)