Make a Wave Along a Curve

Hello,

I have a funky 2D curve, shown below in an image

I want to create a wave pattern along the edge of the curve, something like this:

I have made an attempt on grasshopper to make something like this but its not as close I would like it to be.

Any feedback and suggestions are very helpful. Thanks!

coffee_table_bay_window.gh (15.5 KB)

coffee_table_bay_window.3dm (36.6 KB)

Hi,

Based on your method, I tried to make so the control points you create alternate from move inside and move outside using a python script to generate a list going [-1,1,-1,1…]

Tell me if it what you were looking for

coffee_table_bay_window-NEW-VERSION.gh (12.8 KB)

My aim is to stack these up with a phase shift to make it look like a basket weave pattern for 3D printing.

I was able to do it for a circle but creating a specific expression for it and then phase shift adjacent circles.

The one in your image looks a lot better than mine, but I might try to reduce the amplitude to be able to print it without support features

I feel like I used a very similar approach but my output is a lot worse, I shall try your exact method and see what comes up.

1 Like

P.S. sine_around_sine_2024Apr16b.gh (8.5 KB)

I tried this later and discovered the problem… Post first, think later :rofl:

1 Like

It actaully works !

I had to change the plane on which the sketch is oriented and reduce the magnitude quite a bit

is there a way to make the ends closed ?

Who knows? You have not provided a new file to look at.

You need to work with full periods, multiples of 2*Pi if you want a periodic curve. If you don’t care about that and just want a closed curve, your divisioning must be off.

One way is this.
The division of the curve must still be an even number.

You’ll probably learn more by struggling with this yourelf. This is STILL NOT an optimal solution but you might find some of it if useful.


sine_around_sine_2026Mar26a.gh (15.0 KB)

I realized that the P value in interpolate curve needs to be true for it to be closed.

Your previous file was helpful for getting what I wanted.

Attached my final model here

coffee_table_bay_window.gh (23.1 KB)

Forgot to use your curve.

WAVER.gh (9.8 KB)

Edit:

Your curve:

This is awesome!!

I see that your sin wave is going up and down along the z axis, is it possible to have the sin wave flat on the 2D (X,Y axis) alone… This is pretty cool though and will save your file for later use

WAVER-XY.gh (11.8 KB)

2 Likes

Thanks this is awesome !!

I have made more changes and my table is almost ready.

Another thing I am trying to do is vary the amplitude of the waves as the table goes higher and higher. I have been able to zero the amplitude at the top and bottom and that gives a nice effect, is there a way I can have a graph function where the amplitude increases and decreases based on the graph instead of me manipulating each branch of the data tree.

coffee_table_bay_window.gh (33.5 KB)