i_overlay 6.0.0

Boolean Operations for 2D Polygons: Supports intersection, union, difference, xor, and self-intersections for all polygon varieties.
Documentation
{
  "difference" : [
    [
      [
        [
          [
            -15000,
            -15000
          ],
          [
            -15000,
            15000
          ],
          [
            15000,
            15000
          ],
          [
            15000,
            -15000
          ]
        ],
        [
          [
            10000,
            -10000
          ],
          [
            10000,
            10000
          ],
          [
            -10000,
            10000
          ],
          [
            -10000,
            -10000
          ]
        ]
      ]
    ]
  ],
  "subject" : [
    [
      [
        [
          [
            -15000,
            -15000
          ],
          [
            -15000,
            15000
          ],
          [
            15000,
            15000
          ],
          [
            15000,
            -15000
          ]
        ],
        [
          [
            5000,
            -5000
          ],
          [
            5000,
            5000
          ],
          [
            -5000,
            5000
          ],
          [
            -5000,
            -5000
          ]
        ]
      ]
    ]
  ],
  "xor" : [
    [
      [
        [
          [
            -15000,
            -15000
          ],
          [
            -15000,
            15000
          ],
          [
            15000,
            15000
          ],
          [
            15000,
            -15000
          ]
        ],
        [
          [
            10000,
            -10000
          ],
          [
            10000,
            10000
          ],
          [
            -10000,
            10000
          ],
          [
            -10000,
            -10000
          ]
        ]
      ],
      [
        [
          [
            -5000,
            -5000
          ],
          [
            -5000,
            5000
          ],
          [
            5000,
            5000
          ],
          [
            5000,
            -5000
          ]
        ]
      ]
    ]
  ],
  "intersect" : [
    [
      [
        [
          [
            -10000,
            -10000
          ],
          [
            -10000,
            10000
          ],
          [
            10000,
            10000
          ],
          [
            10000,
            -10000
          ]
        ],
        [
          [
            5000,
            -5000
          ],
          [
            5000,
            5000
          ],
          [
            -5000,
            5000
          ],
          [
            -5000,
            -5000
          ]
        ]
      ]
    ]
  ],
  "subjPaths" : [
    [
      [
        -5000,
        -5000
      ],
      [
        -5000,
        5000
      ],
      [
        5000,
        5000
      ],
      [
        5000,
        -5000
      ]
    ],
    [
      [
        -15000,
        -15000
      ],
      [
        -15000,
        15000
      ],
      [
        15000,
        15000
      ],
      [
        15000,
        -15000
      ]
    ]
  ],
  "fillRule" : 0,
  "inverseDifference" : [
    [
      [
        [
          [
            -5000,
            -5000
          ],
          [
            -5000,
            5000
          ],
          [
            5000,
            5000
          ],
          [
            5000,
            -5000
          ]
        ]
      ]
    ]
  ],
  "clip" : [
    [
      [
        [
          [
            -10000,
            -10000
          ],
          [
            -10000,
            10000
          ],
          [
            10000,
            10000
          ],
          [
            10000,
            -10000
          ]
        ]
      ]
    ]
  ],
  "union" : [
    [
      [
        [
          [
            -15000,
            -15000
          ],
          [
            -15000,
            15000
          ],
          [
            15000,
            15000
          ],
          [
            15000,
            -15000
          ]
        ]
      ]
    ]
  ],
  "clipPaths" : [
    [
      [
        -10000,
        -10000
      ],
      [
        -10000,
        10000
      ],
      [
        10000,
        10000
      ],
      [
        10000,
        -10000
      ]
    ]
  ]
}