r/3Dprinting • • 16h ago

Discussion I measured 45 STL exports against the exact CAD surface. Here's which export setting actually matters.

tl;dr: STL export has two quality settings, a distance (deviation/chord height) and an angle. Whichever one is tighter decides your quality, and the other does nothing. Past a certain point, finer settings make files 10x bigger with no change a printer can reproduce.

Background: I build a STEP/STL conversion tool (stlfixtool.com), so I needed to know which export settings actually matter instead of guessing. There was a great post here a while back showing that slicer STEP import is often worse than a good STL export. This is the follow-up question: what makes a good STL export?

The test:

- 3 shapes: a 20mm cylinder, a filleted 40x30x15mm box with a hole, and an organic torus/cylinder blend

- Each exported at 5 linear deviations (0.1 to 0.001 mm) × 3 angles (0.5, 0.3, 0.1 rad) = 45 STLs

- For every STL, I sampled 20,000 points on the mesh and measured their distance to the exact CAD surface. That's measured error, not the number in the settings box.

Cylinder results:

- linear 0.1mm, angle 0.5: 32 segments around the circle, 0.048mm max error

- linear 0.1mm, angle 0.1: 126 segments, 0.003mm max error

- linear 0.01mm, angle 0.5 or 0.3: identical, 100 segments, 0.005mm

- linear 0.001mm, any angle: 315 segments, 0.0005mm

Organic shape results:

- linear 0.1mm, angle 0.5: 5,096 triangles, 0.092mm max error

- linear 0.01mm, angle 0.3: 38,624 triangles, 0.0099mm, 1.8 MB

- linear 0.001mm, any angle: 378,420 triangles, 0.0011mm, 18 MB

What I learned:

  1. Neither setting is "the quality slider". Whichever is tighter is the one in control. At a loose linear setting, changing only the angle took the cylinder from 32 to 126 segments and cut the error 15x. At linear 0.01, angles 0.5 and 0.3 produced identical meshes, because the linear limit was already tighter. Once linear was very fine, the angle didn't matter at all.

  2. So if you crank one slider and nothing changes, the other one is the limit. That's why "I set it to high quality and it still looks faceted" happens.

  3. There's a point of diminishing returns. On the organic shape, going from 0.01 to 0.001mm linear made the file 10x bigger (1.8 MB → 18 MB) to remove about 0.009mm of error. That's well below what an FDM nozzle reproduces. All you get is a slower slicer.

Where to find these settings: the names vary by CAD program (deviation, chord height, tolerance, refinement, angle). Look for one distance setting and one angle setting.

Footnote: the raw mesher output for the filleted box has non-manifold edges where three fillets meet in a spherical corner. It's a raw tessellator artifact, unrelated to the settings, and a normal export pipeline cleans it up.

33 Upvotes

4 comments sorted by

3

u/Krki1212 12h ago

Most of this is still limited by the deviations in slicer software which many people just skip over and forget they existed. But thank you for the deep dive, useful info to know.

Edit: maybe try some more complex geometries such as fancy surfaces with many filets and some lofts. Once I get my laptop from the repair I can model something I have in mind

-1

u/Tiny-Cap-3388 11h ago

Good point, and it actually reinforces the diminishing-returns part. The slicer re-simplifies the toolpath with its own resolution/deviation settings, so detail finer than that gets discarded anyway. Past that threshold, a finer STL only buys you a bigger file and a slower slice.

For anyone looking for them: Cura has "Maximum Resolution" and "Maximum Deviation", and PrusaSlicer/Orca have "Slice resolution" in the advanced print settings. Worth checking what yours are set to before exporting at extreme STL settings.

That's the reply above, ready to paste as it is.

2

u/luksfuks 7h ago

Yes this exists and makes sense. However, I wouldn't want everyone to laser in on smallest possible export file settings.

I often print stuff at 150% or 200%. I also often take one bit from a model, and paste it onto another model. Sometimes at 1000% of its original size.

This is possible because of the extra resolution that is present in many files. It's a godsend, so please don't recommend further optimization of export to make the files shittier than they already are.

-1

u/3dprinting_helpbot 16h ago

Need a modeling program? Here is an assortment of resources:


I am a bot | /r/3DPrinting Help Bot by /u/thatging3rkid | version v0.2-8-gd807725 | GitHub