Shifting points along a curve


I’m tying to shift the points along a curve gradually so when create the blue curves it looks twisted.

a grasshopper beginner here. I would appreciate any help.

Here’s one way: (9.7 KB)


Thanks Kevin. I’ll test it. I see you used rotate to move the points. That may not work with a non circular closed curves like this one, right?

Yes, that’s right. Perhaps something like this is better for your needs: (7.9 KB)


1 Like

Thanks Kevin. The seam node is the key here!

I appreciate you!

It turned out to be more complex than I thought, as always.

As you can see, the start points of the curves are not in a clean line that can be moved with the Seam node.

I think I need to redefine the start point of the curves to be along the orange set of points, which is an intersection between the curves and a surface. I think the Seam node can do that but I need to measure the length of the curve between the two lines. Not sure how to do that.

I attached the script with internalized data.


Test (505.9 KB)

Are you looking for something like this? (505.8 KB)

P.S. The next step? (518.6 KB)

1 Like

Yes. This works, thank you!


I’m back with another problem.

I got the vertical-ish curves and the horizontal ones in their own data trees and I can use them to create the sweeps.

Now I’m trying to create the panels. I’m trying to draw them from the points but I cant figure out how to isolate each set of points. Maybe with tree mapper but not sure how to use it.

One see I foresee as an issue is that the panels will loose their curvature using the points. Is it better to use segments of the curves?

The script is attached.

test (34.8 KB)

I’m away from my desk for awhile but as I recall, you already had a curved base surface for this? So just split that surface with your new curves?

Might be easier to help if you describe your ultimate goal with this project.



And you didn’t internalize your geometry; I copied two surfaces from the last file I posted but it rapidly becomes an unrecognizable mess. Sorry. KEEP IT SIMPLE!

Sorry about that. I attached the files before I saved it. Attached again with internalized geometry

To answer you question, Yes. I had the original surface. But the curves were re-built to get the same number of control points, so the don’t
exactly match the original surface. I guess I can build a surface with the new curves and split it.

test (520.3 KB)

Hi Kevin,

The goal is to create the vertical and horizontal mullions of a building shading skin. The panels will either be random or a pattern.

I’m having issues creating the panels.

Too bad, I see no reason for doing that? Just complicates matters.
Pottery Barn Rule: You break it, you own it.
I don’t have Lunchbox so can’t help anyway. Good luck.

There are two reasons I rebuilt the curves. To relax the form and to have same number of control points. I’ve seen this in tutorials as a best practice. Sometimes you have tons of control points that may create kinks and weird bends.

I’m pretty sure there is be a better way, but as you may have figured out. I’m a noob. This is my first script.

Thank for responding and for your initial help. I’ll figure it out.

Yes, but in this case you already had a well formed surface to start with, didn’t you? So rebuilding it wasn’t needed. A pattern of spiral curves could be used to cut (split) it into pieces.

Yes. The one I had was well formed surface. It had few weird bends at the bottom. However, the form will change as the design progress and will have multiple options. The purpose of this script is to make it work regardless of the option.