Splits a convex polygon by a plane
Splits a convex polygon by a plane into two parts (or optionally clips the polygon against a single plane) using the Sutherland-Hodgman algorithm. Works in arbitrary dimensions, both in the server and the browser
npm install split-polygon
var splitPolygon = require"split-polygon"var poly = 12 34 00var parts = splitPolygonpoly 0 1 3console.logpartspositiveconsole.logpartsnegative
var splitPolygon = require"split-polygon"
Splits the convex polygon
poly against plane into two parts, one above the plane and the other below it. The equation for the plane is determined by:
return plane0 * x0 + plane1 * x1 + + planen-1 * xn-1 + planen
Points above the plane are those where
planeDistance(x) >= 0 and below are those with
planeDistance(x) <= 0
polyis a convex polygon
planeis the plane
Returns An object with two properties:
positiveis the portion of the polygon above the plane
negativeis the portion of the polygon below the plane
Same result as splitPolygon, except only returns the positive part. This saves a bit of memory if you only need one side.
Ditto, except returns only the negative part.
(c) 2013 Mikola Lysenko. MIT License