I implemented similar method, but would not advice to use such tool path for robotic cutting, since it is much slower than regular zigzag patterns. For sure it is the shortest (but not necessary fastest) for complex shapes, 2d CNC and 3d printers, but slow for 5 axis which I learned hard way…

Thanks Petras, I am working with a 2d case, regular zig zag patterns are certainly much faster (and much easier to make)

I am following the paper ‘connected fermat spirals’ by Zhao et al. the approach is to come up with curves sets for each region, treat each region as a node, then connect the curves in sequence from each region. were you able to successfully connect the curves from each ‘node’? that is where I got stuck last year.

You can offset polygons with clipper. To track the grouping you just need to check when offset becomes multiple curves after offset.

Thanks Petras, I like the idea of checking when an offset becomes multiple curves. Now, to try implementing it