Skip to main content
Model Mender

Browser-local converter

DXF to STL converter

A DXF is flat and an STL is a solid, so this conversion has to add the one thing the drawing does not contain: thickness. You set it in millimetres, closed outlines are extruded to that depth, and holes are cut where outlines nest inside one another.

Drop your DXF files here

STL, OBJ, PLY, GLB, glTF, 3MF, SVG and DXF. Nothing is uploaded: files are read and converted inside this tab. Checking what this device can handle...

Queue

No files yet. Drop models above, or use the file picker.

Add a model to see it here.

Output

Units

Size and placement

Repair and cleanup

These can change the shape, so they need a before-and-after review before export.

Inspection

Add a model to see its dimensions, mesh health and estimated volume.

What this DXF to STL conversion does and does not do

  • A DXF has no thickness, so an extrusion depth is required. There is no honest default for an arbitrary drawing, so the converter asks rather than guessing.
  • Only closed outlines become solid. Loose lines and arcs are joined end-to-end where their endpoints meet, but a chain that does not close is reported and left out rather than force-closed, because guessing where a boundary should join changes your drawing.
  • Holes are decided by nesting, not winding direction. A DXF gives no reliable winding convention, so an outline inside another outline is treated as a hole using the even-odd rule.
  • LWPOLYLINE, POLYLINE, LINE, CIRCLE and ARC are read, including polyline bulges, which are flattened as true arcs rather than cut straight. SPLINE, TEXT, DIMENSION and HATCH cannot be extruded and are listed as skipped.
  • The unit is read from the drawing’s $INSUNITS header when it is present. When it is absent the numbers are read as millimetres and you are told so, because a DXF drawn in inches would otherwise be wrong by a factor of 25.4.
  • Binary DXF is refused with a clear message rather than misread. Re-export as ASCII DXF and it will open.

Troubleshooting

It says no closed outline could be formed

The profile is open somewhere. CAD drawings often contain construction lines, or a boundary whose ends never quite meet. Join the profile into a closed polyline in your CAD tool, then convert.

A hole came out filled in

The inner outline was probably not closed, so it was never recognised as a boundary. Check that each hole is its own closed polyline or circle rather than a set of loose arcs.

Rounded corners look faceted

Arcs and bulges are flattened to line segments within the curve tolerance you set. Lower it for a smoother result; the default is finer than any consumer printer can resolve.

The model is 25 times too big or too small

The drawing declared no unit, or declared one you did not expect. The workspace shows the unit it read and where it came from; assign the correct one and export again.

Questions

Why does it need a thickness?

Because a DXF genuinely does not have one. It describes outlines on a plane. Any thickness you get from a converter that did not ask you was invented, and this site will not invent geometry.

Can it handle splines?

Not yet. A SPLINE is reported as skipped rather than approximated, so you find out on the page instead of discovering a missing edge in your slicer. Convert splines to polylines in your CAD tool and they will extrude.

Will the holes really be holes?

Yes, and the result is checked: the exported mesh is re-opened and its triangle count, mesh count and bounding box are compared against what was built, and the inspection panel reports zero open edges for a clean profile.

More tools