3D curve, self-intersecting - rebuild with shifted control points?

Hi everyone,

I have a 2D curve that is self-intersecting. I would like to make it three-dimensional by (smoothly/gradually) moving its control points in its Y direction (back and forth) so that the three-dimensional piped curve is not self-intersecting and has a certain “depth” (e.g. maximum movement = 15 units).

I tried to rebuild the curve and then move its control points within a range of values between 0 and 15 but now I am kind of stuck since it is a rather complex curve. I was just wondering if there was a way I could solve this with grasshopper? I guess the curve extreme points would be the ones that need the highest value (for movement) and then there would need to be a change to smaller values again…

Has anyone ever tried something similar or has an idea how I could solve this?

My problem with modelling the 3D curve in Rhino is that if I move control points it doesn’t work very smoothly…even though I tried to keep the amount of control points as small as possible…If you have a solution for modelling it, I would be fine with that as well. It just seems like grasshopper might offer a cleaner and more flexible solution…

I would appreciate any hints.


Have you tried the SoftEditCrv command? It might be a good solution for this.

Yes, I’ve tried that command but had problems at first (kinks at tangent points etc. - probably because I imported the curves from illustrator?). I tried again and it seems to work quite well now that I have rebuilt the curve. I thought it works independently from the number of control points and rebuilds the curve as you edit, but it seems it doesn’t (?).
I will go with that command for now - it’s just a bit tricky because of the varying distance parameter; especially when two “areas of influence” meet.

Thanks for the reply.

Yeah, making sure you have good clean input curves always goes a long way for just about any command in Rhino. I bet after the rebuild the curve above behaved nicely.