Adjust STL Tessellation and Tolerance in FreeCAD

Exporting a 3D model to STL in FreeCAD converts smooth analytical surfaces into a polygonal mesh, a process known as tessellation. Adjusting the tessellation quality, specifically the surface deviation (chord length tolerance) and angular deviation, ensures that curved surfaces export smoothly without visible facets or excessively bloated file sizes. This guide covers how to configure these tolerances globally in export settings and manually on individual objects using the Mesh Design workbench.

Method 1: Adjusting Global Export Settings

FreeCAD uses default deviation parameters when you export a body or part directly via File > Export. You can refine these settings globally:

  1. Open FreeCAD and go to Edit > Preferences.
  2. Select Import-Export from the left-hand menu.
  3. Click on the Mesh Formats tab.
  4. Locate the Export section to adjust the deviation parameters:
    • Maximum mesh deviation: This controls the chord height (the maximum allowable distance between the true curved geometry and the flat surface of the polygon). Lower values result in smoother curves. A default value is typically 0.1 mm; changing this to 0.01 mm to 0.05 mm provides significantly higher resolution for detailed 3D printing.
  5. Click Apply and OK.

Any standard export to .stl will now utilize this updated deviation threshold.

Method 2: Manual Tessellation via the Mesh Design Workbench

For precise, per-model control over chord tolerance and mesh structure, convert the shape into a mesh before exporting.

  1. Switch to the Mesh Design workbench using the workbench selector dropdown.
  2. Select the solid body or part you wish to tessellate in the tree view.
  3. In the top menu, select Meshes > Create mesh from shape... (or click the corresponding toolbar icon).
  4. A task panel will appear with several meshing algorithms:

Standard Mesher

The Standard mesher is the quickest way to configure basic geometric tolerances:

  • Surface deviation: The chordal tolerance. It dictates the maximum gap between the polygon edge and the true mathematical curve. Smaller numbers yield more polygons and smoother surfaces.
  • Angular deviation: The maximum angle allowed between adjacent polygon faces. Decreasing this value (e.g., from 30° down to 10° or 5°) prevents sharp faceting on tightly curved bends.

Netgen Mesher

For complex organic geometry or uniform triangle distributions, the Netgen option provides fine-tuned controls:

  • Select the Moderate, Fine, or Very fine presets.
  • Alternatively, choose User defined to specify the exact Chordal error and maximum/minimum edge lengths.
  1. Click OK to generate the mesh object in the tree view.
  2. Hide the original solid body, select the newly generated mesh object, and go to File > Export to save it as an STL.

Practical Tolerance Guidelines

  • FDM 3D Printing: Set surface deviation to 0.02 mm to 0.05 mm, and angular deviation to 15° to 20°. Finer settings generally exceed the physical resolution limits of FDM nozzles.
  • Resin (SLA/DLP) Printing: Set surface deviation to 0.005 mm to 0.01 mm, and angular deviation to 5° to 10° to prevent visible layer faceting.
  • Avoid Over-Tessellation: Setting the chord tolerance excessively low (such as < 0.001 mm) drastically increases polygon counts, creating unnecessarily large file sizes that can cause slicers and CAD software to freeze without any visible improvement in print quality.