str8

Straight-skeleton computation in the browser and Node — CGAL’s Straight_skeleton_2 compiled to WebAssembly.

npm install @matthewjacobson/str8

▶ Paste-GeoJSON demo

Drop in a Polygon / MultiPolygon / FeatureCollection and see its skeleton.

★ Polygon gallery

Pick from 28 polygons (interesting-polygon-archive) and explore their skeletons. Pan & zoom.

⌂ 3D roofs

The same polygons lifted into straight-skeleton roofs (height = wavefront time), in three.js.

◎ Offsets & exterior

Inset/outset offset contours and interior/exterior straight skeletons, with a distance slider.

↝ Central paths

Route a path between two points through the polygon's center, with a direct↔central dial — via the str8-path package.

⬚ Region paths

Connect two draggable regions inside a container through the central skeleton — via the str8-path package.

GitHub repo npm package CGAL 6.1 · Emscripten · embind · single-file ESM