Stretching out pipe intersections

I guess I should post a drawing here to show what I want to do, but not sure how I would show it. What I want to do is draw two pipes or cylinders intersecting at a certain angle. I can do that. But then I want to find the line of intersection and stretch that out into a 2D drawing that I can print and wrap around a real pipe to show where to cut it. Hope I’m making sense. Seems like there ought to be a way to do that in Rhino.

If the pipes are linear in one direction you can use UnRollSurf, if the pipes are bent ( = double curved) then you can use Smash. From the help file:

  • [Smash] Makes an approximate 2-D development of surfaces that have compound curvature.
  • This command can be used to deal with fabrics that have a certain amount of flexibility and stretch.
  • The Smash command is a modified version of the UnrollSrf command. With UnrollSrf, the surface has to be linear in one direction to unroll, and with the Smash command it does not.
  • Since it is not possible to flatten a double-curved object (like a half a coconut shell) to get a paper pattern, the answer [of Smash] is always inaccurate to some degree. This command is useful if the object you are flattening is not extremely curved and you want to make the pattern out of a stretchy material like rubber.

More useful info here:

// Rolf

Hi Joe, you could use a planer surface in the intersection of the 2 pipes and use intersect for the 3 objects. It should give you some curves to work with.
You could also set the cplane to the created surface that was used for the intersect and set the viewport to plan. You’ll then print it out 1 to 1 ratio.
Might be more than you need. —-Mark

I found unroll surface under surface flattening. I’m running Rhino6. I selected a surface but then it wanted me to select a curve on the surface and I could not get it to select the end of the pipe and nothing got produced.

Not sure I understand how to do what you suggest about the planer surface. Sorry.

I think maybe I need help understanding how to get the intersection of the two pipes in the first place. Feeling a bit dumb. I’ve used Rhino a lot for 3D drawing but haven’t used all the features especially some of the boolean stuff. Any pointers toward tutorials would be appreciated.

Use Intersect for the curve of intersection.

Use Trim or Split to trim or split one object where it intersects with another object.

Learn to use Trim and Split before using Boolean commands.

Also, wireframe or ghosted or x-ray display modes (rather than shaded, rendered, etc) can be useful when making selections while using Trim or Split.

Selecting a curve is an optional step when using UnrollSrf. If you don’t want to unroll a curve on the surface just enter to complete the command.

Methods for unwrapped template of end of pipe shape. (Expanding RIL’s note above).

Copy the pipe surface.

If the pipe is not trimmed at the intersection then use Intersect to create the intersection curve.

Split the copied surface near the intersection using the Isocurve as cutting tool option and Shrink=Yes option. Delete the unwanted part(s) of the copied surfaces, An alternative is to use Trim but a cutting tool will be needed

UnrollSrf the copied surface. If the pipe is not trimmed at the intersection then select the previously created intersection curve to also be unrolled.

If the surface won’t unroll because it has double curvature use Smash instead of UnrollSrf. Be aware that doubly curved surfaces cannot be unrolled exactly for the same reason that you can’t wrap a piece of paper around the surface and have it tight to the surface everywhere.

Example: Pipe End DC01.3dm (172.6 KB)

Thanks everyone, especially for the example. I use trim all the time for various things, just didn’t think of it for some reason for this problem. Using your explanation, I got my project to work. Many thanks. This will be very useful.