hello.

I have a closed curve generated from the grasshopper with a variable number of points. When the number of curve points changes the first point of the curve also changes. Is there a way to keep always the same first point of the curve?

Thank you

Please post a file that shows the problem.

If I create something like your describe the curve seam remains at the first point: curve 1st point.gh (6.5 KB)

ok, you are right the description of the problem wasnâ€™t good.

I will try to describe it better.

I have a main polygonal curve which shape doesnâ€™t change and also I have two subtract curves.

If I compute the boolean curve ( i do that with the clipper plugin) I have a new curve( i name it boolean curve).

In the top part of the image, this boolean curve contains 9 points.

If I move the subtract curve 1 as I have done in the bottom part of the image the new boolean curve contains 8 points.

I want the start point of the boolean curve to be always the same, ( you can see which in the image) bacause now it change when the number of boolean curve points change.

Is that clear?

Youâ€™ll have to post-process the curve and specifically set the `Seam` parameter.

Use curve seam.

Thank you.

I have used curve seam but I am not sure what to set on t input.

How i post-process the curve. Is that the same that ME_Mark suggest in the following reply?

Thank you.

You could try something like this: curve 1st point.gh (7.0 KB)

But without a gh file itâ€™s hard to tell.

in the second circle, I have set the parameter i of the item component to 1 and 2. You can see the selected point which is what I want. But if I change the slider in the first circle the 1 and 2 not represent the correct points.

A lot of curve components require a *curve parameter* as an input, this is often denoted using the symbol t\hspace{-1mm}.* In Rhino and Grasshopper, curves are continuous one-dimensional shapes, and each point on a curve is associated with a single number; the aforementioned curve parameter. If the *domain* of a curve is the interval [0, 1]\hspace{-1mm}, then the start of the curve is at t=0 while the end of the curve is at t=1\hspace{-1mm}. Note however that t=0.5 is not necessarily the curve mid-point, that depends entirely on the type of curve youâ€™re dealing with.

So letâ€™s assume that you have a closed curve with domain [a, b]\hspace{-1mm}. Since the curve is closed, the point associated with a and the point associated with b are coincident. This location is called the *seam* of the curve. If you want to move the seam to a different location, you must figure out what parameter describes that. You can use the `Curve CP` component to find which parameter on a curve is closest to some point in space.

* I think because a lot of the early literature on algebraic curves dealt with trajectories (planets, projectiles, etc.) so a curve is the motion of some object over t\hspace{-1mm} ime.

ok, very informative David. I finally was able to set the first point of the curve. Thank you also ME_Mark.

But now I have another problem.

As I said the curve which I have set the starting point is a boolean operation between other curves. When I explode it I get the curve points as a list and now the 0 index point is always the same. After that, the index of the rest points sometimes increases in the clockwise direction and sometimes in the counterclockwise.

Is there a way to control the index of the rest points of the closed curve to increase always in a clockwise or in a counterclockwise direction?