Did you try our new Clipper plugin classes?

As you see, you can do polygon clipping with intersection, union, difference & exclusive-or using ClipperMBS module. The ClipperOffsetMBS class allows to add offset to a polygon like the one on top right.
And the bottom example is a rectangle with a triangle hole. We intersect with a second rectangle and get the new square area with the triangle hole.
