Exact polygon boolean operations
MIT License
A robust polygon Boolean library in under 20 lines of code! (Excluding dependencies) Work with any kind of polygon, results are accurate to machine precision, and under no circumstances will valid input ever crash or produce incorrect output.
var polybool = require('poly-bool')
var a = [[[-1,-1], [-1,1], [1,1], [1,-1]]]
var b = [[[0, 0], [0,2], [2,2], [2,0]]]
console.log(polybool(a, b, 'sub'))
[ [ [ 1, 1 ], [ 1, 0 ], [ 2, 0 ], [ 2, 2 ], [ 0, 2 ], [ 0, 1 ] ] ]
npm i poly-bool
require('poly-bool')(a, b, op)
Computes a Boolean set operation between a
and b
a,b
are polygons represented by lists of loops of pointsop
is the operation to apply. Possible values include 'and', 'or', 'xor', 'sub', 'rsub'
Returns A polygon encoding some boolean combination of the components of a
and b
(c) 2015 Mikola Lysenko. MIT License