Chris Collins

Tools · fabrication

DXF checker for laser and CNC

Check a DXF before it goes to the laser or router — units and inch/mm mix-ups, open contours with their gap sizes, duplicate and overlapping lines, tiny segments, splines and ellipses, text that is not exploded, blocks, layers and colours, and features too small for the bit or kerf — then fix what can be fixed and export a clean R12 DXF or SVG.

Added

Works with

How to use it

Most of the trouble I have had between Fusion and a laser or router came from the DXF, not the machine: a sketch exported in the wrong units, an outline with a 0.02 mm gap that the CAM will not pocket, a line drawn twice that the laser burns twice, a spline the post cannot read, a slot narrower than the bit. This page finds those, shows where they are, and fixes what can be fixed without the CAD model. Everything runs in your browser; the drawing is never uploaded.

How to use it

  1. Open a DXF (or drop it on the preview). ASCII DXF from R12 to 2018 is read: lines, arcs, circles, polylines (with bulges), splines, ellipses, text, blocks and points. The sample plate has one of each common fault. Binary DXF is not read — save as ASCII.

  2. What was found lists the problems, worst first; click a coordinate to zoom to it. The preview marks open ends red, forks pink, duplicates orange, tiny segments purple.

    • Units: what $INSUNITS says, and whether the size makes sense for it. A part that comes out 4 × 3 mm was almost certainly drawn in inches; the checker says so and offers × 25.4. A file with no units is read as millimetres or inches, your choice.

    • Open contours: every loose end, with the distance to the nearest other loose end. Small gaps are usually two sketch lines that don’t quite meet; big ones are a missing line (or an engraving line that is meant to be open).

    • Forks: three or more ends at one point — usually a duplicate or a construction line.

    • Duplicates and overlaps: the same line, arc or circle twice, a short line lying on a longer one, collinear lines that overlap.

    • Tiny segments below the threshold you set (0.05 mm by default).

    • Splines and ellipses, which many CNC posts and older laser drivers can’t read.

    • Text that is still text, not outlines (explode it in CAD — in Fusion, right-click the sketch text and choose Explode Text — before you export).

    • Blocks, entities with Z values, entities drawn from below (extrusion 0,0,−1, common from a sketch on a bottom face; software that ignores it mirrors them), entities on layers that are off or frozen, and hatches, dimensions and the like that are not cut geometry.

  3. Tool and kerf: set the bit diameter (or the laser kerf). Cutting outside each outline and inside each hole, the checker shows holes smaller than the tool, slots, gaps and notches it cannot get into (red), and inside corners it will round to its radius (amber) — where you need dog-bones or T-bones for a square fit. Open outlines are joined within the join tolerance before this check.

  4. Layers: each layer with its AutoCAD colour number and entity count. Untick one to leave it out.

  5. Fix and export: tick the fixes and Apply fixes. The preview switches to Cleaned and lists what changed and what is still to fix by hand.

    • Join open ends within the tolerance: line and polyline ends move to meet; arcs stay where they are (the others move to them); an open polyline whose ends meet is closed.

    • Remove duplicates and overlaps: copies and pieces lying on others go, overlapping lines merge.

    • Flatten splines and ellipses into polylines within a chord tolerance (0.01 mm by default).

    • Explode blocks, Join chains into closed polylines (some laser software wants one path a shape), Remove text, Scale and set the Units written in the file. Download the clean file as DXF (R12, the version everything reads, with the layers, colours and arcs kept and the units recorded) or SVG (millimetres, a group a layer in its colour, hairlines), or Open in nesting to lay the parts out on sheets.

For the router, open the clean DXF in the CAM tool; pick feeds for the bit in router feeds and speeds. For the laser, measure your real kerf with the laser test patterns. To pack many parts onto a sheet, use sheet nesting.

Limits

The checker works on the drawing, not on the design intent: it can’t tell an engraving line meant to be open from a cut outline with a gap, so read the list before applying a join tolerance bigger than the gaps you expect. Text can’t be turned into outlines here (that needs the font); do it in CAD. 3-D polylines and meshes are skipped.

Browser support

Any current browser. The tool-size check uses Clipper (from jsDelivr); without it only holes are checked.

Privacy

Your drawing stays in your browser. The page downloads Clipper (clipper-lib 6.4.2, Boost licence) from jsDelivr for the tool check. Open in nesting passes the cleaned DXF through this browser’s storage.

Runs entirely in your browser — network requests go only to the services named on this page.