Fracture N paths along every intersection into the maximal set of
non-overlapping regions. Returns one PolygonPath per region.
Algorithm: for every non-empty subset S ⊆ {A1..AN}, emit the region
(∩ S) − (∪ complement) — points covered by exactly the members of S
and no others. By construction the emitted regions are pairwise disjoint
and their union equals pathUnion(A1..AN).
For N=2 this collapses to the three Illustrator "Divide" outputs
(A−B, B−A, A∩B). For N=3 up to 7 regions are emitted. The 2^N − 1
subset count limits this to small N in practice; passing more than ~8
inputs is a misuse — the polygon-clipping kernel dominates anyway.
Fracture N paths along every intersection into the maximal set of non-overlapping regions. Returns one
PolygonPathper region.Algorithm: for every non-empty subset S ⊆ {A1..AN}, emit the region
(∩ S) − (∪ complement)— points covered by exactly the members of S and no others. By construction the emitted regions are pairwise disjoint and their union equalspathUnion(A1..AN).For N=2 this collapses to the three Illustrator "Divide" outputs (A−B, B−A, A∩B). For N=3 up to 7 regions are emitted. The 2^N − 1 subset count limits this to small N in practice; passing more than ~8 inputs is a misuse — the polygon-clipping kernel dominates anyway.