How to do in without anemone?

Hi All.

Trying to get rid of the seams on the solids after the boolean operation with 3d Voronoi cells and (kind of) torus.
The idea is to get curves from all the borders but the initial seam of the torus breaks the surface in the middle like this

So I take one cell, deconstruct it to faces and find normal vectors in their centers.
Then I compare the angle between all the normals in the cell with the mininum degree
And then cull those faces which have no pair in the bounds.
After all I get the nomber the lists with the faces where only 1 item if the face have no pair in the bounds and the 2 of them if their normals almost parallel.
Then I join them and grab the borders.

It’s easy when it is only one cell but if I apply this algorythm to all the cells the comparison of normals goes all over the faces and it ruins all the logic. How to split it?

It’s no problem to add a repeating operaion with anemone but maaaaybe there is another way of doing it? Who can help?

Here is the definition (1.1 MB)

thanks in advance

Make an intersection Brep | Brep of the ring with the voronoi or use the ring seam to eliminate those curves using them to compare similarity… or can you only use the geometry produced by the Boolean difference? In other words, if you can take a step back, you simplify the problem a lot.

It would be helpful to have the original surface before the Voronoi so the known seam curve could be used. Maybe also the points used to create the Voronoi?

Thanks Dani.
The intersection won’t do because there are come internal ribs inside the torus. But there is a good idea to find similarity with the ring seam.

The trick is to find somehow the logic of elemination of the conjuncted faces among the whole number of cells. I believe there is a nonrecursieve method and I’m just thrying to find it for the future use.

So while it’s plain to see, we don’t get to know which curve is the seam? :frowning: (1.1 MB)

wow! You’re Genious! :+1:That’s what I’ve been searching for! :grinning:
Thank you so much!

Well in that case…

Nuke-o-Brain_by_Kristina (1).gh (1.1 MB)

Meticulous attention to data trees is the key. I use one or more text panels to view the tree structure from each component to make sure they match on downstream inputs.

Hah, hah, touché. Whatever works.

Sorry Bros. Actually for the next step I meant to do something like this

That’s why I had to define those faces to join them and grab the border. This saves the tree and everybody happy.

Your methods only exclude the seam but ruin the tree and the loops. Maybe there is a way to restore the loops back?

What “loops”? The tree is still intact in my model. The culled lines are in 97 branches corresponding to the Voronoi cells. Inverting the Cull Pattern ‘P’ input returns the seam curve fragments instead of the cell edges. The white group shows 4 Voronoi cells intersected by the seam.

But I’m thinking this is more than just a poor spec. The offset cutouts and thickened gummy loops shown in your last post are a considerable degree of mission creep, well beyond the unseamed faces of the four Voronoi cells. Given that some of these unseamed faces will be polysurfaces, how do you get from there to the images in your last post?

Check this tool