Can anyone direct me to a good resource about applying boolean operations to polygons?
I have a polygon that is basically a list of points. There's three operations I want to do them:
1) Cut holes in them-- this would ideally produce two new polygons results for me, with a seam somewhere so I have two polygons that have dents in them that represent the hole.
2) Cut pieces of the edges out-- this would ideally produce just one result polygon, which would be identical to the original except with a bite taken out of it where the first one was.
3) Bisect a polygon. The example of this would be if I had a polygon and then I had another polygon that crossed the whole polygon. The result would be two polygons with the big bite taken out of the middle, not touching eachother.
I eventually have to triangulate the results.
I'm looking to write this routine myself, so that I can conform it to the quirks of my own polygon class. At the same time, I'm not the kind of guy who understands pages and pdfs with equations and theory. Is there a simple resource anywhere that explains this?
(Note: I've looked at several polygon libraries online that accomplish this. I am looking for lightweight, since I don't need full boolean functionality, just subtraction)