# Add one unit in the z direction to control points?

I have a basic (flat) input curve on the xy plane.

I’d like to be able to use grasshopper to add one unit in the z direction to all the control points.

What component should I be using to do this? The unit Z component?
It doesn’t appear to be working for me…

What is the difference between that and just moving the object 1 unit in Z? Essentially moving all control points of an object just moves the object…

–Mitch

True. Well I’m actually trying to move half the control points (or a random number of them).
I’m trying to give my curve some depth in the z direction for a set number of points.
In other words, trying to make a 2D curve more 3D.

I did manage to get the points of the curve, and to cull every other one. Now I’d like to add a specified amount in the z direction to the selected points, recombine the list with the untouched points (somehow).

Not sure the best way to ask what I would like to do. Sorry about that.

[it’d probably be easier for me to just manually draw a curve over any other object with osnaps on, but hey, I’m here to learn]

Well, the problem here is that you can’t use control points in GH to manipulate curve the way you can in Rhino. When you get the control points of a curve in GH, all you get are the point locations, they are not “grips” as they are in Rhino.

So, as far as my limited knowledge of GH goes, you would need to get the existing control points as you have already done, do some translations to some or all of them, and then run a new curve through the new modified set of points with the NURBS curve component. (someone please suggest a better way if this is not the optimum).

–Mitch

Okay what I have done is to separate the points into xyz.
Half the points now have z=1.

“All I need to do now” is to recombine the correct half of the original points with these modified new control points.
The problem I am having now is the recombination of two sets of data.

Yes, I saw where somebody did something similar with a nurbs component:

(but I’m not smart enough to follow what was done there)

Here is one way of doing this…

Moving Control Points of Curve.gh (6.4 KB)

That looks pretty neat. What is the component that looks like the symbol for pure new wool?

Standard `Weave` under `Sets | List`.

Sorry, got interrupted here, I was working along the same lines as Wim, here is a somewhat more “random” solution…

RandomMoveCrvPtsZ.gh (13.9 KB)

–Mitch

That’s pretty cool! I thank you both!!
That’s exactly what I was looking for!

I see that I was on the right track but I had never heard of this weave component before…

I’m amazed at the speed of the help I’m getting here…
It’s getting late in Australia here so I’m not operating at 100%.

Now all I need to do is loft a circle along the curve, to create a solid, like a wire. I tried to extrude along curve, but of course it needs to be rotated so that it is pependicular to the curve, otherwise the shape is distorted. Now the strange thing is I have done this before with a circle component and also divide — rotate — loft components, but it doesn’t work here and I think it has to do with the data tree structure. :-/

Should I ask how to do that in another question?

Well, you could just use the “Pipe” component… --Mitch

Pipe command eh?
That’s a new one for me too. LOL
I will try.