A Polygon Clipping and Offsetting library ![GitHub Actions C++ status](https://github.com/AngusJohnson/Clipper2/actions/workflows/actions_cpp.yml/badge.svg)
Clipper2 is a major update of my original Clipper library which I'm now calling Clipper1. Clipper1 was written over 10 years ago and, while it still works very well, Clipper2 is better in just about every way:
- The code is cleaner and faster.
- Clipper2 is easier to use with simple functions that handle all common uses.
- Floating point coordinates no longer need to be converted to integers before passing them into the library.
- And micro self-intersections (integer rounding artifacts) and polygons with touching edges are now rarely seen in solutions.
And Clipper2 has just about all the features of Clipper1 that sets Clipper apart from other polygon clipping libraries, including:
- being able to clip complex self-intersecting polygons
- support polygons with multiple filling rules (EvenOdd, NonZero, Positive, Negative)
- is numerically robust, and
- is free to use in both freeware and commercial applications
There's more detail in the Docs folder above, but proper documentation is still a little way off.