Dividing a Brep in equal areas based along curve

Hello,
I am working on a 3D printing project and need to divide a brep along a curves perpendicular plane (to oriant that peice on the table later).

The constraint is the area of the surface. I have a 15kg spool which means I can print around 0.36m2 surface. I need to divide the brep into almost equal surface areas so I can print them into batches of 15kg.
let me know if someone has worked on this before or has a solution.

Divide by area.gh (175.9 KB)
I have tried to expain this with an image so that we can understand better.

is this going to be printed with “classic” parallel slicing? (meaning the printing path is always planar and lies on a plane parallel to XY? )

or are you printing this with some kind of robotic arm that can rotate in 3D its nozzle?

Robotic Arm - 8Axis

my first thought, because this Brep is indeed a perfect untrimmed surface, is to Isocurve it to a super high density, and create those 6 groups by total sum of isocurve lengths

this should save you MUCH time because you are not dealing with a 3D thing anymore, and if curves are dense enough (in the order of like thousands I guess) it should not make a real difference? :slight_smile:

something like this:

but the best way is probably to slice it first, in such a way you get the real 3D-printing path-curves, and at that point divide those paths into 6 groups with same total lengths?
are you going to have fixed or variable extrusion-rate?

all these questions are to just avoid the classic galapagos thing that moves up and down, but that’s a way too :slight_smile:

[edit] well, looks like my first thought was indeed wrong… because the resulting areas -despite the calculation being pretty fast- are off by like 1%

(more time could be saved by not Replacing Paths and just get the first of each value changes… but that’s just a detail in a basically flawed situation…)


Divide by area_inno.gh (44.4 KB)

The 3D in the file is a simplified verson of what I need to print. Also making the toolpath like this does not really work with my printng configeration.
I need to divide the this peice by surface area and then slice them individualy with our customised slicer.

Hi @inno thanks for the definition, but it only works on a surface and not on a Brep. I need to do this operation on a refrenced brep with multiple joined surfaces. Let me know if you find an alternative using breps..

Hey @inno

With a litlle bit of replacemnts I got what I need. Thanks for the definition. I am attaching the GH below for a refrenced brep.
I also add a phyton code to convert the area to kg with density and thickness

Divide by area_innoV2.gh (43.4 KB)

happy you liked the “principle” and found your way through it! :+1: nice changes you have done! :clap:

as much as I like Galapagos, splitting that brep a zillion times would have taken hours of optimization :smiley:

That was my first thought but did not dare to burn my PC :grinning_face_with_smiling_eyes: