Extracting "valleys" at mesh intersections

python
kangaroo

(August Lehrecke) #1

Hi.

I’m wondering if anyone has a good way of extracting lines like these at the intersections of a mesh tube network.
stripeParameterization

I have a model that basically takes any network of lines and turns it into a centenary hanging chain model using Kangaroo. I then use the dendro plugin to create a volumetric mesh out of the polylines and I change the radius of a tube depending on height.

I’m trying to translate this into a producible object which is simple enough for the curved parts, but I am having trouble with the intersections. So, my main question is if anyone has an idea of extracting the “valleys” (pictured below) of the intersections, given their center points.

I’m tagging the kangaroo community on this cause I have a hunch that the intersections might be easier to figure out before the simulation and then somehow translate it through the solver. Or somehow constructing a more organized low-poly mesh that has a more organized logic at the intersections. Attached is my working GH script. You will need Kangaroo2 and Dendro to run it.

catenaryAirBeam.gh (25.3 KB)

P.S. this is the link to the paper where I got the first image from, looks pretty interesting, but I’m terrible with math.
Stripe Parameterization of Tubular Surfaces


(August Lehrecke) #2

Also, is there a way to maintain a data tree relationship through the Kangaroo solver? I would like to be able to keep my poly-lines on separate branches, but they all get flattened when I run them through the solver.


(August Lehrecke) #3

@DanielPiker solved my problem in his awesome new plugin found here

This is going to have some awesome implications for developable tube networks!

Thank you Daniel!


(Daniel Piker) #4

Great!
I’d started working on the plugin when I saw this question and was hoping it might help here. Sorry I didn’t reply at the time.
This also reminds me - one potential further development I was thinking of would be to have an option for struts with 6 or 8 sides, and use this to reduce twisting of the mesh:


(August Lehrecke) #5

Ah no problem, how fortunate!

Yes I was wondering about how you could correct the twisting an areas where it branches in two different directions. I am definitely getting them more the steeper I go.

The added functionality of increasing the number of sides would be fantastic. All in all it is really impressive, especially with speed, it seems like a lighter cleaned up version of exoskeleton, not to mention all the added functionality with the mesh morph.


(August Lehrecke) #6

So much fun!

Usually had to wait for 5 min for exoskeleton.


#7

I am pretty sure Laurent did something similar where you could change the number of sides here:

Maybe it can help.