i_overlay 0.2.1

The iOverlay is a poly-bool library that supports main operations such as union, intersection, difference, xor, and self-intersection by the even-odd rule. This algorithm is based on Vatti clipping ideas but is an original implementation.
Documentation

iOverlay

Demo

Try out i_overlay with an interactive demo. The demo covers operations like union, intersection, and difference. Demo

Features

  • Supports all basic set operations such as union, intersection, difference, exclusion and self-intersection.
  • Capable of handling various types of polygons, including self-intersecting polygons, multiple paths and polygons with holes.
  • Optimizes by removing unnecessary vertices and merging parallel edges.
  • Effectively handles an arbitrary number of overlaps, resolving them using the even-odd rule.
  • Employs integer arithmetic for computations.

Working Range and Precision

The i_overlay library operates within the following ranges and precision levels:

Extended Range: From -1,000,000 to 1,000,000 with a precision of 0.001. Recommended Range: From -100,000 to 100,000 with a precision of 0.01 for more accurate results. Utilizing the library within the recommended range ensures optimal accuracy in computations and is advised for most use cases.

Basic Usage

Add the following imports:


Union

Difference

Intersection

Exclusion (xor)

Self-intersection