Uses primitives with a configurable thickness for giving reasonable results even for inaccurate inputs.
The module this was forked from was no longer being maintained. I've managed to get skeleton and shape / paths working. The rest may still be broken as the tests are not currently passing. Use at your own peril!
npm run test
npm install -g budo
npm run dev
For general use from path to THREE.js roof shapes:
// Path is an array of LineSegment(s) const skeleton = new CompGeo.Skeleton( path, Infinity ); const skeletonPath = new CompGeo.shapes.Path( skeleton.spokes ); const shape = new CompGeo.shapes.Shape( path.concat( skeletonPath ) ); const geometry = shape.triangulate();