What a spline actually is
Inside a CAD file, a smooth curve can be stored two very different ways. A polyline is the broadly compatible way: a sequence of connected straight segments, one after another. Zoom in far enough and you can see the corners. A spline is the mathematical way: the file stores control points, knots, a curve degree, and sometimes weights or fit points that together define the curve, and whatever opens the file computes the smooth shape from them.
Inside a professional CAD package, splines are great — compact, perfectly smooth, infinitely scalable. The trouble starts the moment the file leaves CAD-land. A DXF spline rarely reaches your motion controller as-is: the design or CAM software first converts it into controller-compatible motion — usually line segments, arcs, or a mix — and every program does that conversion with its own method and tolerance.
Why your CAD app exports them without asking
Because to your CAD program, splines aren't a problem — they're the native language. Fusion 360, Illustrator, Inkscape, and most drawing tools store curves internally as Béziers or NURBS, so when you hit “Export DXF,” writing SPLINE entities is the most faithful thing they can do. Nobody is being careless; the exporter simply assumes the file is headed to another CAD program, not to a $400 diode laser.
That's also why the same DXF can open flawlessly in Fusion and misbehave in LightBurn. The file may not be broken: LightBurn does read DXF splines, but it must interpret and approximate them on import, and difficult or poorly formed spline data can land differently than it looked in the CAD program that made it. The old R12 dialect has no native SPLINE entity at all — one big reason it's the safer export choice for machine work.
The four ways splines break laser jobs
1. Part of the chain doesn't support them. Some budget CAM tools and machine software skip or mangle entities they don't fully support. Geometry silently disappears, or the import fails outright.
2. Fill mode stops working. LightBurn's fill needs closed loops. Poorly formed spline geometry — or imperfect conversion between applications — can leave open contours, or several pieces that only look connected. The shape reads as open, so it won't fill — and no amount of zooming makes the culprit obvious, because the gaps can be a few hundredths of a millimetre.
3. The conversion happens at the wrong tolerance. When a program flattens a spline for you, it picks the accuracy. Too coarse and curves cut visibly faceted; too fine and you get tens of thousands of microscopic segments that make the controller stutter and the machine judder on curves.
4. Repeated conversions stack up. Every program that imports, exports, optimizes, or approximates the curve may use its own tolerance and method. Each pass can raise the node count, soften the shape, or introduce tiny endpoint discrepancies — which is how a “closed” shape arrives with invisible gaps and doubled nodes.
The fix: five steps
Step 1 — Find out what's actually in the file. In LightBurn, run Edit → Select Open Shapes to spot contours that can't fill, and click shapes to see whether one “circle” is really dozens of pieces. To confirm the file actually contains splines, check the object type in a CAD program — or open the DXF in a plain text editor and search for the word SPLINE.
Step 2 — Convert the splines to line/polyline geometry. The free routes: in current Inkscape, use the R12/R14 DXF export option that converts splines to polylines (or Extensions → Modify Path → Flatten Beziers, then verify the result — its “flatness” setting is not a millimetre tolerance); in AutoCAD, SPLINEDIT → Convert to Polyline; in QCAD, Modify → Explode. Where a tool offers a true chord tolerance, choose it from the accuracy your part needs — around 0.01–0.02 mm suits fine work, but test on your own machine rather than treating any number as universal.
Step 3 — Join segments and close the gaps. Merge touching segments into continuous loops. LightBurn's own Edit → Auto-Join selected shapes (which joins endpoints within about 0.05 mm) catches many cases, and Close Selected Paths With Tolerance gives finer control; stubborn files need the gaps closed at the geometry level.
Step 4 — Export as R12 DXF and keep the contents simple. R12 predates the native SPLINE entity, which removes one major source of import trouble. It isn't a magic filter, though — R12 still allows arcs, circles, text and more — so aim for plain LINE/POLYLINE output, which imports predictably across a wide range of laser, CNC, and CAM workflows.
Step 5 — Re-import and verify before cutting. Back into LightBurn: Select Open Shapes should find nothing, and Fill should preview cleanly. Now it's worth material.
That's the manual road — entirely doable, and for a single simple file it's fifteen minutes well spent. The two-minute road: DXF Studio's Cleanup & Repair does steps 2 through 4 in one deterministic pass — it converts unsupported curves to machine-compatible line geometry, joins eligible near-coincident endpoints within a controlled tolerance, removes duplicate geometry, and returns a simplified R12 DXF. You see the full result and the toolpath preview before paying anything, so the worst case costs you nothing but the upload.
Why does LightBurn refuse to fill my shape?
Fill mode needs closed vector loops. Imperfect spline conversion can leave open contours or disconnected segments, so LightBurn sees an open shape and won't fill it. Convert the splines to polylines, close the gaps, and fill works.
Will flattening splines to lines change my part's dimensions?
Not measurably, if it's done with a sensible chord tolerance. Flattening at 0.01–0.02 mm keeps every point of the approximation within a hundredth or two of the original curve — far below what a laser kerf or CNC bit can reproduce anyway.
What's the actual difference between a spline and a polyline?
A spline is a mathematical curve (a NURBS) defined by control points and equations — smooth, compact, and great inside CAD. A polyline is just a chain of short straight segments. Machines and simple controllers understand straight segments; not all of them understand the equations.
Why does the same DXF open fine in Fusion 360 but misbehave in LightBurn?
Full CAD packages speak fluent NURBS, so the file looks perfect there. LightBurn converts what it can on import, but conversion differences, file-version quirks, and open contours surface exactly at that handoff — and budget controllers downstream are stricter still.
Should I export DXF as R12 for laser work?
For maximum compatibility, yes. R12 is the plain-English dialect of DXF: it predates the SPLINE entity, so an R12 file with only LINE and POLYLINE geometry imports predictably almost everywhere — LightBurn, SheetCAM, and older or budget controllers included.