Hello,

I am trying to modify XY positions of array geometry based on attraction to a curve. I am close but have double geometry on the end result. As I will be lofting this with my base array of squares this is a problem. Any help is appreciated.

-Bob

The points output from `SqGrid`are not the center points of grid cells. They are grid corners.

Attractor curve-move XY-double geometry_re.gh (15.1 KB)

The number of points from `SqGrid` ‘P’ output (1,156) is more than the number of squares in the grid, the ‘C’ output: 33 X 33 = 1,089

So I rewired slightly, then lofted as you suggest? Not sure about other aspects…

Attractor curve-move XY-double geometry_2019Oct25a.gh (20.0 KB)

Ah, perfect. I see my mis-wiring. Thanks!

Thanks Joseph. I had a general idea how to loft together but this would have taken me some time. I am new to GH but have used Rhino forever. This is very helpful. Thanks!

This (below) takes it a step further, to the gold standard “Closed Brep” for solids.

Attractor curve-move XY-double geometry_2019Oct25b.gh (21.5 KB)

Note that internal to your cluster `Remap+`, I flattened the input to `Bnd` *(Bounds)*. Instinct and experience tells me this, not reasoning in this case…?

Wonderful. How difficult is it then to add a thick (5-10mm) section to the top and then cut to be a circle? This was my next step…

Probably not difficult at all, though I’m not sure what you mean? Show us?

Here’s an example of adding a “washer” on top. *(purple group)*

I am trying it now based on your last modification.

I think I am stuck in how to remove the top cap as I believe this is preventing a closed brep.

Your posted code appears to be incomplete?

Here’s how to ignore the tops of the closed breps, using only the bottoms and lofted sides:

I am closer but the solid diff if not right. I had not used Item List before…this is great. What am I missing on the solid diff?

I see no point using `Cap` instead of both boundary surfaces, as before? Do you see what the ‘B’ input to `SDiff` is? Two “Closed Brep” cylinders. What do you expect from `SDiff` in that case?

I see. Let me rework this. Might be tomorrow. Really appreciate your insight.

This is probably messy and too many steps. I am close, just a few extra pieces of geometry. If you have a chance to review/comment that would be great. Thanks.

I took a different approach.

**NOTE:**replaced

`SUnion`with

`Brep Join`in version ‘b’

Attractor_curve-move XY-double geometry_create_circle_b_2019Oct26b.gh (37.6 KB)

Each brep is used to slice the other, then the largest resulting piece of each is used.

Attractor_curve-move XY-double geometry_create_circle_b_2019Oct26c.gh (37.6 KB)

P.S. Later… A more “aggressive” influence of attractor curve *(yellow)* due to proximity and scale.

Attractor_curve-move XY-double geometry_create_circle_b_2019Oct26e.gh (40.9 KB)

Wonderful! Reviewing everything now. Thanks so much. Very insightful.

Super helpful. Thanks again.