Hello,
I have a question about Split Brep Multiple. I’m trying to split surfaces with curves in preparation for cutting. The cutters are using Flutten, so the operation takes longer. How can I rename the trees so they all have the same name to avoid the flutten?
Please see attachment GH file.
Thanks, but that’s not quite what I need. There are two separate data lists here: one for cutouts and one for rectangular surfaces. When I try to cut out a surface using the “Split Breadp Multiple” feature, I have to create a “flutten tree” for the cutouts, and that takes a long time because there are so many objects. So my question is, is it possible to rename the cutout data tree to match the names in the rectangular surface data tree so that the Split Break Multiple function works faster without using the Flutten tree.
2. Also, if there is a tree of the same name for cutouts and rectangular surfaces, you can use the “Boundary surface” function instead of “Split Breadp Multiple” and this will save working time.
Could you answer one more question? The algorithm uses (Tree branch renumber) which renumbers the tree path starting from zero, but if the initial lists have different sequences and gaps in the X and Y coordinates, the algorithm doesn’t work (see attachment).
For example, is it possible to rename the tree by the X and Y coordinates sequentially so that the tree levels match?
I would also consider the option to reduce calculation times by not splitting the surfaces, but using Boundary Surface directly into the flattened list of all your inside/outside boundary curves: BoundarySrf component will take care of everything else, and wherever there’s a boundary there will also be a cutting curve you can use (like with SrfEdge):
the only downside is that you don’t get a sorting order of the surfaces anymore… but you can order/sort them accordingly with whatever you want and Sort, or sort the paths with Replace Paths
depending on the amount and complexity of your shapes, this might be faster even if “dirty”
…what I mean by “dirty” is that, by doing this way, you lose your original data structure and then use a geometrical operation (Pull Point) to rebuild it: with 20 rectangles and 12 cutters, this is certainly fast… if you have six-thousands shapes and 4 million cutters, this might not be the best approach because you probably want to keep the data tree well sorted all the time
if you want to maintain the data tree of the rectangles intact, you can assign/relate the cutters to each different rectangle branch somehow… the following is a similar approach where each circle center gets assigned to the rectangle that is the closest to its center point:
consider that your original shape sorting order does not obey any general rule, they look like sorted by ascending X coordinate, but then items with same X coordinate are sorted sometimes along Y, other times along -Y: