When exporting a very simple cylinder as a mesh (STL), the cylinder
is exported as a square, inside and outside. Am I missing something or is this a bug?
Can you make a screenshot of your STL export settings and post it here? I doubt it’s a bug.
Setting anything to 0 in the dialog deactivates it. So basically in the screenshot above you have not told Rhino anything about what you want it to do… So it does… something.
The tolerance value at least needs to be set to some positive number, not 0. For basic 3D printing work, 0.01mm is not bad, for finer stuff, you may want it smaller than that.
I use these settings as a starting point:
Finer for certain small objects that need fine detail.
The “Tolerance” setting of “0.00 millimetres” has been the default value since first use of Rhino 7 but that has never produced a problem for me, so I didn’t think to adjust the “Maximum distance, edge to surface” believing the “0.00” value to incorrectly represent the underlying setting. A bit dumb on my part to assume without testing.
OK, thanks. I will follow your advice. But, I do contest that leaving the “Tolerance” at 0.00 does not produce an issue.
There is no “Zero Tolerance” setting that is valid for this. The tolerance setting in the simple dialog is the same as the maximum distance edge to surface setting in the detailed controls.
The default value in that dialog in an out-of-the-box Rhino is 0.01mm.
(This is from Rhino 7)
The fact that it will accept 0 as a value in that dialog is probably a bug. Unless your object is all planar surfaces, the mesh that approximates any NURBS object with curved surfaces will never fit the surface exactly to ‘zero’ tolerance. So even if the box accepts 0, it is still setting it to some value internally.
Even setting it to 0 here in Rhino 7 or 8 I cannot get it to make square tubes out of round ones like you showed - but that may depend on the size of your objects and perhaps their distance from the origin.
Accepting zero as input is by design, not a bug.
File Mesh Export Settings help describes what input of zero does for various settings. For some it causes an internal default value to be used, which may be dependent on object size. For others it disables use of the criterion, and may modify how other criterion work.
Yes, I mentioned that entering zero in the various settings disables them. There is nowhere in that help article that specifically says that setting a value to 0 might trigger an internal default setting - except it is maybe implied in the density setting - as long as you read the topic and do the math:

So setting it to 0 will make p=1, and therfore internally the max distance edge to srf will get set to 10-1 or 0.1 units.
Also @KelvinC - pressing the Help button in the STL export simple parameters dialog gets you to the help topic above:
but it should probably link to the following one instead?
Stereolithography (.stl) import/export | Rhino 3-D modeling?
I submitted a bug report about this. Thank you.
RH-94008 File IO: Change topics opened from STL meshing dialogs
RH-94008 is fixed in Rhino 8 Service Release 31