Pipe self intersecting

Hello :slight_smile:
Im trying to create a tunnel that has different cross sections and follows a curve i have created on a surface.
The problem is that the geometry of the curve causes direction changes.
i have tried sweeping and piping and both of them have similar problem following this curve.
anyone has an idea how can i approach this?
Thank you in advance!!

tunnel creation.gh (37.4 KB)

Depending on what your end goal is, you could possibly shrinkwrap the pipe.

In some situations, you can split self intersecting pipes but tight corners like this will never solid union…

As @martinsiegrist points to: The curve has intersecting points. So what do you want to happen there? If you do not want them, you have to give your curve some space so it does not touch itself (also when thickness is added).

  1. If I use the pipe method, this gives a nice pipe, when capped is a solid brep. When combined with solid uninon with your main object the will give a nice ornament (1/2 pipe laying on the surface

  2. Sweep with the arc as you tried is also possible, but much more complex.
    You have to divide the curve (I suggest perp frames); then orient the arc to all those frames; and rotate them using the normal of the surface at those spots.

PS: What version of Rhino are you using, The pipe component gives an error saying it is “OLD”

Does this mean the cross section varies?

Hello,
How about [Pipe Corner Clean]?

https://www.food4rhino.com/en/app/pipe-corner-clean

yes :slight_smile:
that is the end goal. at the moment i just tried to find a method that works.
the best option for controlling that is probably the one with the arc and sweep. however i think i need to divide the curve in the tight corners in order that sweep wont fold the shape.

its only for planner curves. is there a way to spread my curve, use this plugin and map the resulting pipe back to the surface?

The end result is a shaped cylinder that allows water to move on its surface through a “tunnel” or “slide” in the longest way possible, hence, the optimization process. Im trying ro figure out a way to create this “tunnel” that allows me to change the cross section of the “tunnel” in certain areas.
the idea with perp frames is good, but Im not sure how can i create a code that not only orients to the normal of the curve but also flips when the geometry folds.

thank you all for your time!

Reconsider the cross-section curve. If the final radius of the tube is larger than the radius/bend of the curve itself, you will always end up with distortions. My advice would be to adjust the curve with a minimum radius/bend

NB: The solution with the sweep etcetera will also not solve that issue.


I’m still wondering how you’re planning on fabricating the tunnel?

Another way to create a boolean union is with a loop and boolean union sphere after sphere.

tunnel creation loop.gh (21.7 KB)

But somehow I think pipe variable and corners with larger radii is the way to go.

Thank you everybody!
the spheres are a nice idea, this is what i did for now.
at first ill 3d print it with PLA, later when ill print it with Ceramics ill try thinking of a better geometry for the tunnel.
Happy Christmas!

If you end up 3D printing the tunnel, you can shrinkwrap the pipe.