
2014-03-10 0:06 GMT+01:00 Alexander Brock <a.brock@...2965...>:
Hi,
I divided the problem into smaller parts:
- Make a function that gets rid of all the strokes without changing
what the user sees. That means, iterate over each objects, check if they have a visible stroke (width > 0 and not fully transparent), duplicate it if it has a visible fill and finally convert the stroke to a path.
- Get rid of all clipping and masking. Identify every object which has
a clip or mask set and replace the object by the intersection of the clip (mask) and the original object.
- Remove all overlap by removing the shape of the topmost object from
all underlying objects and so on.
Can I do these tasks via an extension without having to re-program intersection calculation, stroke-to-path etc?
Is this just a very special case or does it have wider use than vinyl cutting (and embroidery)?
This kind of operation has a lot of use cases besides vinyl cutting, but right now there is no code to do this reliably. The existing boolean operations code is rather fragile and doesn't work for some corner cases.
During this summer I'll be doing a GSoC project which should address this.
Regards, Krzysztof