AMF File Format for 3D Printing

AMF, or Additive Manufacturing File Format, a 3D file format used for storing and describing objects to be processed through 3D printing/Additive Manufacturing. It was introduced as the ASTM standard file format for 3D printing in 2011 as an alternative to the de-facto industry standard STL file format. AMF is an XML-based format designed to contain native support for file specifications such as geometry, scale, color, material, lattices, duplicates, and orientation. 

3D Rook in AMF format

Why AMF?

AMF was introduced as an alternative to the STL file format to address many of the pitfalls of the current popular file format. STL files introduce errors such as leaks and inconsistences, and also does not support color, material choice, or orientation. Furthermore, STL files rely on triangle subdivision to account for curvature. As the STL file scales in size, retaining resolution means introducing significantly more triangles. For example, a 10cm sphere at 10 micrometer resolution requires 20,000 triangles. Scaling up the 10cm sphere at the same resolution would significantly increase the amount of triangles, resulting in a much larger file.  AMF seeks to address these issues by redesigning the way a 3D object is digitally stored.

AMF Structure

AMF addresses these issues by reconstructing the data format in XML. The format begins with unit specification, which defaults to millimeter if left undeclared. The following structure is then followed:

  • Object
    The object element defines volumes and materials, where the volume is defined by a face-vertex polygon mesh. There must be one object element in each file.
  • Material
    The optional material element describes one or more materials. If no material is listed, a single default material is assumed. This element can also be used to describe if the material is mixed, graded, lattice sub-structure, or random. 
  • Texture
    The optional texture element defines images for texture mapping or color assignment.
  • Constellation
    This optional constellation element defines the relative pattern of the objects within the file. This allows multiple objects to be arranged within the file, specifying their location and orientation. A constellation can also define the location and position of a separate constellation.
  • Metadata
    The optional metadata element describes additional information about the object(s) and elements. This can include things like authorship, copyright information, or instructional data.

In order to address the limitations of STL geometric scaling fidelity, the AMF file format supports the curving of triangle patches. Simply put, using curved triangle patches can reduce the number of mesh elements required to describe the surface. In doing so, it has also been shown to reduce the error of a spherical surface by a factor of 1000 as compared to surfaces described by sub-divided planar triangles.

AMF Adoption

As this file format was designed specifically for addressing growing trends in 3D printing/ Additive Manufacturing, the advantages over traditional standard formats are great. However, the greatest disadvantage is that the industry has not yet seen wide-spread adoption of the new file format.  It wasn't until Solidworks 2015 did Dassault Systemes include AMF support in their export options. While other companies such as Autodesk, Stratasys, and Cimatron have introduced support of the format, the STL continues to dominate the industry. Regardless, Sculpteo has supported this file format since 2011! Check out our professional 3D printers guide to see which printers we have available to print your AMF file.

You can make an AMF 3D file using any of the software listed below:

Explore your AMF file!

Do you have an AMF file you'd like to print? If so, upload it here, and find out what other 3D file formats we support here. Are you having problems with your model? Check out our webpage on how to repair your file and our eBook on how to fix your 3D files.  Are you interested in building an AMF model? Visit our tutorials page to learn how! 





×