Batch STL Export

A Fusion 360 add-in that exports many bodies or components to STL in one pass, with refinement settings that are remembered between runs.

Fusion's own 3D Print dialog does neither: one object per invocation, and every setting forgotten the moment it closes.

What it does

The API reference is wrong about the units

Measured in Fusion 2704.1.23 by exporting known geometry and reading the files back. The four STLExportOptions refinement properties carry the same numbers the 3D Print dialog shows, not Fusion's internal centimetres.

propertydocumentedactually
surfaceDeviationcentimetres millimetres
normalDeviationradians degrees
maximumEdgeLengthcentimetres millimetres
aspectRatio unitless

maximumEdgeLength = 1.0 on a 30 mm ball produced a mesh whose median edge is 0.98 mm; centimetres would have given ten times that. normalDeviation = 5 held facet normals inside 1.19 deg, whereas five radians is 286 deg and would constrain nothing. TriangleMeshCalculator, by contrast, really does use the documented internal units — the two are not interchangeable.

What the presets are

Pure functions of the bounding-box diagonal, measured across four bodies:

presetsurface deviationnormal maximum edgeaspect
Highdiagonal / 1995410 deg diagonal21.5
Mediumdiagonal / 631015 deg diagonal21.5
Lowdiagonal / 251230 deg diagonal21.5

Maximum edge length is always the diagonal itself, which no triangle can exceed — so no preset limits edge length at all, and 0 is the faithful default rather than pinning one body's diagonal onto a whole batch.

What the deviation setting delivers

It tracks the number you set, linearly, across three decades. On a 40 mm-radius cylinder the chord deviation came out at the value asked for almost exactly. On a 30 mm ball the worst facet-plane deviation came out at twice it, consistently:

setworst facet deviationratio
0.001 mm0.002001 mm2.00
0.003 mm0.005968 mm2.00
0.010 mm0.020008 mm2.00
0.050 mm0.094434 mm1.89

Measured against a least-squares sphere fitted to the exported vertices. Using the vertex mean as the centre instead gives numbers up to 7× wrong, because a lat-lon tessellation crowds the poles.

Two things Fusion does quietly

A hidden body exports nothing. exportManager.execute() returns true and no file appears. The add-in switches the light bulb on for the duration and puts it back, and marks those rows was hidden.

There is no triangle-count preview, deliberately. TriangleMeshCalculator returned 128 880 triangles where the export produced 7 224 at the same tolerance, and with no aspect or edge limit set it took Fusion down entirely. Counts are read out of the written files instead.

Install

git clone <this repo>
powershell -File install.ps1

Then in Fusion: Utilities → ADD-INS → Scripts and Add-Ins → Add-Ins → Batch STL Export → Run. The button appears in Utilities → Make, next to 3D Print, and in Mesh → Export. No dependencies — it runs on Fusion's bundled Python, stdlib only.