LIVE cartercole.net --:--:-- UTC

// 04 RESTRICTED

carved-panel

PYTHON THREE.JS CNC ACCESS RESTRICTED

Two takes on a decorative wooden panel for a CNC router. The first is a Python script that lays out organic voids, Catmull-Rom blobs of 7 to 11 jittered points on a staggered three-column grid, and writes an SVG with the voids and the outline in separate groups, so CAM software can give each its own through-cut toolpath. The second, a 3D page in the browser, carves instead of cutting through: a web of struts at three depths that pass over and under each other where they cross, carved from both faces.

The carved version

Seeds are relaxed apart and their Voronoi edges become the struts. Each strut sits in a top, middle or bottom layer, and near a joint the layers blend, so one strut eases over or under the one it crosses. Sliders set the cell count, strut and bevel widths, the joint fillet, the stock thickness (19 mm by default) and the depth range of each layer.

It checks its own work as a machine would see it. A ball-nose cutter of the chosen diameter is simulated on both faces, any island no longer joined to the frame is removed, and struts thinner than a set minimum are tinted. The export is a binary STL, written by hand in the page. The page says plainly that it makes no G-code, since that depends on the machine, and leaves toolpaths to CAM, with a second setup for the back after flipping the panel on dowels.

Nothing records a panel having been cut.