Why does MultiPipe not work?

Hello,

I would like to use MultiPipe, but it doesn’t work with my curves:


file.gh (19.9 KB)

Instead, it works for example with Parameter Pipe Mesh. But I like the aesthetics of MultiPipe much more. How can this be done?

Would be very thankful for help! :slight_smile:

MP relies on a line graph - a connected line network -, but most of your lines aren’t even touching.

1 Like

this also helps:
image

but it doesn’t solve the issues indicated by @diff-arch

1 Like

Oh, that’s true. I didn’t recognize that. Thank you! Do you know how to let them touch?

Investigate why they aren’t touching in the first place. :wink:

you can bypass your offset then it works:
image

1 Like

Here’s a way simplified definition with some extra spice that solves the issue!

file-re.gh (10.4 KB)

1 Like

If you don’t want to include the edges of your boundary brep - like in your example above -, you can use this definition instead.

file-re-re.gh (18.6 KB)

1 Like

Ohhh beautiful!! Thank you!

I have two additional questions:

  1. Why does it not work with rounded curves?

    file-re-re-q.gh (19.2 KB)
  2. Is there a way to get different heights of the extrusion?

If I had to guess, I’d say the component that gets rid of duplicate lines now fails, because I can’t deal with the curves, introduced by the rounded brep.

Didn’t somebody else show you yesterday how to do this? Once you have the closed brep, it should work in the same way.

I’m not on the computer any more, but I can check the definition again tomorrow.

1 Like

Okay, thank you! And yes, I have no solutions for this now. Have a good evening :slight_smile:

Here’s a version that should work with curved faces of the boundary brep as well.

I’ve continued with the definition proposed in this thread.

uneven-brep-vornoi.gh (31.1 KB)

Please note that with 3D Vornoi diagrams there is always the problem that small cells can get generated, especially if you additionally force the Vornoi into a volume other than its bounding region.
This becomes problematic when you want to thicken the cell edges, because each knot can theoretically only be as thick radius-wise as half the length of its shortest, adjacent edge.
In other words, half the length of the smallest edge dictates the biggest, overall thickness possible for all struts, if you apply an overall thickness. If you don’t respect this, you’ll get weird geometry abnormities.

In order to mitigate this, you’d need an algorithm that’d remove cells with very small edges, and correct all adjacent cells to fill the newly available space, which is no easy task to tackle, especially without scripting.
That said, you can always use the seed of the random points to selectively generate different constellations, each time checking whether errors appear or not, and simply work with a flawless seed that also makes sense otherwise.

2 Likes

Oh wow, that’s very, very helpful! Thank you so much!