[OpenSCAD] Discuss manifoldness, co-incident faces edges etc

Doug Moen doug at moens.org
Sat Nov 16 12:02:11 EST 2019

This is a followup to my explanation of some of the problems with STL. The question is: what file formats exist that fix these problems?

Today, the two most popular alternatives are OBJ and 3MF.

OBJ is a very simple, human readable mesh file format that includes topology information. It is very easy to write software that reads and writes this file format. It is, in my experience, the most widely supported non-STL mesh file format. I'm a bit mystified why OpenSCAD doesn't support it, because in my experience, everything else does.

3MF is a monstrously complicated format, but it has a lot of industry momentum behind it, and it is very expressive.
* 3MF includes topology information, so it fixes the problem with the "2 cubes" model.
* 3MF is the first 3D printer file format standard that is unambiguous. There is an algorithm for determining if a 3MF file is valid, and if it is valid, then there is a documented algorithm that slicers must use for interpreting the file. Prior to 3MF, there was a problem of portability of model files between different 3D printer slicers, where different slicers would interpret the same model in different ways. The rule that STL files must be "manifold" and must be free of self-intersections is the old way that we used to deal with the model portability problem. But most STL files on Thingiverse.com violate these rules anyway, so 3MF provides a more universal and robust solution to the model portability problem.
* A 3MF file can store multiple meshes, and 3MF directly supports dual- and multi-extruder, multi-material 3D printers.
* 3MF can store slicing parameters. That, plus the industry momentum, is the reason why Cura and Prusa Slicer now use 3MF as their native file format. If you import some meshes into Prusa Slicer, edit the slicing parameters, and then "Save" your model, you will get a 3MF file.

Next, there is the "too many triangles" problem, where you have models that can be printed by the physical 3D printer hardware, but which cannot be printed if you first have to convert it to a mesh.

A few years ago, Shapeways introduced the SVX voxel file format as a solution to the "too many triangles" problem. This directly addressed a problem that some of their customers had, being unable to print their models due to limitations of mesh file formats. SVX was not widely adopted. Then, behind the scenes, Shapeways was one of the groups involved in the 3MF committee, advocating for 3MF to support voxels. This advocacy has not yet been successful. The good thing about voxels is that it directly represents a 3D model as slices, which is very helpful for driving a 3D printer. The problem with voxels is that each slice is represented as an array of pixels. There are some voxel printers, that are driven directly by a voxel representation, but they are rare. Most 3D printers need to do motion planning to move a printhead or laser around while printing a layer, and a pixel representation of each layer is not directly useful for motion planning.

In 2016, 3MF added the "3MF Slice Extension". This represents the model as a stack of layers. Each layer is represented as a set of polygons. This looks like a viable solution to the "too many triangles" problem, as long as you aren't trying to drive a full colour multi-material voxel printer. But I don't know what the impact has been of this extension, or who supports it.

Finally, there are voxel printers, which I think are the most exciting trend in 3D printing hardware. A Stratasys J750 is a voxel printer that directly controls the colour, translucency, and rigidity of each voxel that it prints. The things you can do with it are incredible, and it should be obvious why STL is not a good file format for such a printer. The J750 is very expensive ($750,000). A more affordable alternative is the HP Jet Fusion, which prints full colour nylon from powder. Each voxel is separately coloured using an inkjet process. This is relatively new (2018). You can't currently control the transparency or rigidity of voxels, but the printer only costs $50,000, and the prints are much cheaper if you use a service bureau.

I am still hoping that we get industry support for a standard voxel file format for 3D printing. I think this becomes more likely as voxel printers become cheaper and more widely available. Stratasys just made a J750 available this year, and also this year, there are now service bureaus that offer full colour Jet Fusions. I think that voxels will be the ultimate replacement for STL.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscad.org/pipermail/discuss_lists.openscad.org/attachments/20191116/f2c0fde0/attachment.html>

More information about the Discuss mailing list