cad/model.ts// Single source of truth for cabinet CAD: a Cabinet describes every part ONCE// (its assembled 3D box + where it nests on a board); the 3D view renders the// boxes and the DXF cut files are generated from the same data at runtime.//// Target machine: BobsCNC KL744 (48 x 48 work area). Cut with a 1/4" bit.// The DXF holds TRUE finished part outlines -- let your CAM apply the// bit-radius offset (outside profile); there is NO toolpath baked in.// POCKET_* layers are partial-depth clears (NOT through cuts) with the depth// in the layer name itself (e.g. POCKET_5-16_DEEP), since layer names import// into CAM operations and text labels don't; the depth is also written next// to each pocket on the LABELS layer for the operator.export type Span = [number, number];export type XYZ = [number, number, number];// ---- CNC parameters ---------------------------------------------------------export const BIT_DIA = 0.25; // 1/4" router bitexport const BLEED = 0.25; // unused margin kept clear of every board edgeexport const GAP = 1.0; // space between parts: cutting the OUTSIDE of each// part eats BIT_DIA off each side, so this leaves
Showing the first 20 lines.
Get full code