Sheet nesting for laser, CNC and plasma
Nest DXF and SVG parts (or built-in shapes) true-shape onto sheets and remnants — quantities, gap and kerf, rotations, mirroring, grain lock, small parts inside holes — with a genetic search you can stop at any time, utilisation and cut length, and each sheet exported as SVG or R12 DXF with the original arcs.
Added · updated 28 October 2026
Works with
- 2.5D CAM CNC and 3D printingOpen in 2.5D CAM sends the nested sheet there as the design to cut
- Box and enclosure maker CNC and 3D printingits Nest these parts sends the box panels here
- Laser-cut patterns CNC and 3D printingits Nest these parts sends the pattern parts here, quantities included
- DXF checker for laser and CNC CNC and 3D printingtakes a cleaned DXF from the DXF checker’s Open in nesting
How to use it
Load the parts, say how many of each and what you are cutting them from, and the tool packs them onto as few sheets as it can, by their real outlines rather than their bounding boxes: an L-shape tucks into another, a washer goes inside a frame’s cut-out. Everything runs in your browser; your drawings are never uploaded.
For rectangular panels from sheet goods (a cut list for a table saw or panel saw) use the cut list instead. The box maker and the laser patterns tool nest their own parts by bounding box; export their DXF and bring it here for a tighter layout.
How to use it
-
Add parts: Add DXF / SVG… (or drop files on the tool), or pick a built-in shape (rectangle, rounded rectangle, circle, ring, a frame with a hole, L, T, triangle, hexagon) and set its size. Each closed outline in a file becomes a part; outlines inside it are its holes, and open lines inside it (engraving, scores) travel with it. A shape inside a hole is a part of its own. Load sample gives a mixed set on a 600 × 400 mm sheet.
-
Set each part’s quantity, and tick Grain for parts whose grain or brushed finish must run one way: they only turn 0° or 180°.
-
Stock: sheets with a width, height and quantity (empty means as many as needed), used in the order listed. Remnant from DXF / SVG takes the largest closed outline of a drawing as an odd-shaped offcut and puts it first, so it is used up before a new sheet.
-
Settings:
-
Gap and kerf: the space left between parts is gap + kerf. The edge margin keeps parts off the sheet’s edge (clamps, the uneven edge of a plate).
-
Rotations: none, 180°, 90° steps, 45° steps, or any 360/N. Allow mirrored parts when both faces are the same (most sheet stock; not printed or coated material).
-
Pack towards the left (short layouts, leaving a full-height offcut on the right) or the bottom.
-
Search: Quick is one pass; Normal and Thorough run a genetic search for longer. The search runs in the background; the best layout so far is shown as it improves, and Stop and keep best ends it whenever you are happy.
-
Curve tolerance: how closely curves are followed while nesting (exports keep the real curves).
-
-
Read the result: utilisation (parts' area over the sheets used), sheets used, parts placed and any that did not fit, the cut length and number of pierces (one per outline, hole and mark), and an overlap check: once the search ends the page checks the layout again with the parts' true outlines — no overlaps, every part on its sheet, every gap at least the gap + kerf you set.
-
Export each sheet as SVG (millimetres, the real size) or DXF (AutoCAD R12 ASCII, millimetres or inches,
$INSUNITSset; layers SHEET, CUT and MARK). Arcs and circles stay arcs and circles (polyline bulges and CIRCLE entities); Béziers and splines become fine polylines in the DXF and stay curves in the SVG.
How the nesting works
Each part, in each allowed orientation, is turned into a polygon and grown by half the gap. For every pair of parts the no-fit polygon — the positions where one would overlap the other — is the Minkowski sum of one outline and the other turned inside out (computed with Clipper). Holes add inner-fit regions where a smaller part fits without touching, and the sheet (or remnant outline, less the margin) gives the region a part may occupy at all. A part goes to the corner of what is left that keeps the layout most compact; a genetic search then tries other orders and orientations and keeps the best (the same scheme as SVGnest and Deepnest).
Not done here
Common-line cutting (two parts sharing one cut), lead-ins and lead-outs, micro-joints and tabs, and the
cut order (inside features first, nearest next) are left to your laser or plasma software, or the
2.5D CAM tool for a router. Text and dimensions in a DXF are ignored, and an SVG’s
<text> must be converted to paths first.
Feedback is a gift. Something to improve, a feature to add, or a bug? Tell me.
Runs entirely in your browser — network requests go only to the services named on this page.