Tangent lines from a pipe

New to Grasshopper, but after a few hours of videos, realize it is possibly the only way to extend HISTORY far enough to derive a surface tangent to a pipe, while modifying the two underlying curves.

So, I create a curve with 5 or 6 control points to get the shape eventually needed. To start with. I can just create it as a straight line along the x axis. Then I create a pipe around that curve. then I need to project another curve onto the pipe. The intersection of that projected curve on the surface of the pipe s where the tangent lines must begin. finally the tangent lines are lofted to create a surface that is ALWAYS tangent to the surface of the pipe.

Since this is my first Grashopper task, I figured I should ask for some pointers : )

An image and a GH file with as much as you can do on your own is recommended.

OK Will do.

You must be doing it wrong.


Thank you. Now FIND shows it. Odd.
Now I have a curve projected onto the pipe )
BUT, when i change the shape of the curve, it does not update.
Do i have to bake the whole thing?
When I right click and select bake (to layer one) nothing changes
The curve was created in Rhino and then selected as imput curve for Grashopper
What is the concept here?

The concept is that you post a GH file with enough geometry and code to demonstrate the issue instead of just describing it.

P.S. This part of your description doesn’t make sense to me?

Yes I understand. As soon as I can get that far I will post it

Please keep in mind this is my first grashopping )

Perhaps this will help visualize it
The tangent lines are coplanar with the extracted isocurves.
The surface will be formed by lofting the vertical lines (that are tangent to the cylinder surface)
The cylinder will be trimmed at the projected line


Ideally, there would be an infinite number of vertical lines

How do you extract n isocurves on the surface of the pipe?

like this:

Would it be better to use a cylinder solid?
Would it be better to create a surface with sweep 1 curve?

I don’t have the patience to draw this process out slowly so wrote this. Hope it gets you started?

Tangent lines from a pipe_2020May02a.gh (15.0 KB)

And on both sides of the “pipe” (cylinder):

Tangent lines from a pipe_2020May02b.gh (14.1 KB)

Woa! Thank you!
This was as far as I got…


Looks like you had a long way to go yet. Six posts into a thread and still no GH file… tsk, tsk. If nothing else, I hope you will post a GH file way sooner next time. And image too, that was more helpful than all your words. Have fun.

yes yes I know. I am only a few hrs into Grasshopper so pls be patient with me. So much to learn…

look at this, you can create your own curves, then you can adjust the tangency with the pipe.
curve tangent to surface.gh (50.4 KB)

Thank you for that! This problem is very similat to this:

As you correctly deduced, there are in fact two curves in the final version. The first is the top of the side, the pipe serves as the surface transition from the side to the btm. The second curve represents the keel centerline.
The pipe serves multiple functions. It is constant radius and when mirrored at the bow, the centerline intersection trim forms a transition also.

The final step is to make the side tangen to the front and back vertical pipe sections, in addition to the longitudinal pipe we are working on now. The side surface is then defined on three sides by tangency to pipes. Not simple, and may not be possible.

Here are a couple of small changes to use a Pipe on a curve instead of a cylinder.
Note the labels on three sliders:

  • rocker’ affects pipe bend
  • crv_M’ affects curve bend
  • crv_Z’ affects curve height relative to pipe

Tangent lines from a pipe_2020May03a.gh (17.1 KB)