STL (file format)

STL
A CAD representation of a torus (shown as two concentric red circles) and an STL approximation of the same shape (composed of triangular planes)
Filename extension
.stl
Internet media type
  • model/stl[1][2]
  • model/x.stl-ascii
  • model/x.stl-binary
Developed by3D Systems
Initial release1987
Type of formatStereolithography

STL is a file format native to the stereolithography CAD software created by 3D Systems.[3][4][5] Chuck Hull, the inventor of stereolithography and 3D Systems’ founder, reports that the file extension is an abbreviation for stereolithography.[6]

An STL file describes a raw, unstructured triangulated surface by the unit normal and vertices (ordered by the right-hand rule[2]) of the triangles using a three-dimensional Cartesian coordinate system.[7] In the original specification, all STL coordinates were required to be positive numbers, but this restriction is no longer enforced and negative coordinates are commonly encountered in STL files today. STL files contain no scale information, and the units are arbitrary.[8] STL files describe only the surface geometry of a three-dimensional object without any representation of color, texture or other common CAD model attributes. The STL format specifies both ASCII and binary representations. Binary files are more common, since they are more compact.[9]

STL is widely used for rapid prototyping, 3D printing and computer-aided manufacturing,[10] and supported by many other software packages.[citation needed]

History

STL was invented by the Albert Consulting Group for 3D Systems in 1987.[11] The format was developed for 3D Systems' first commercial 3D printers. Since its initial release, the format remained relatively unchanged for 22 years.[12]

In 2009, an update to the format, dubbed STL 2.0, was proposed which evolved into the Additive manufacturing file format.[12][13]

Format

ASCII

An ASCII STL file begins with the line:

solid name

where name is an optional string (though if name is omitted there must still be a space after solid, for compatibility with some software). The remainder of the line is ignored and is sometimes used to store metadata (e.g., filename, author, modification date, etc).[14] The file continues with any number of triangles, each represented as follows:[15]

facet normal ni nj nk
    outer loop
        vertex v1x v1y v1z
        vertex v2x v2y v2z
        vertex v3x v3y v3z
    endloop
endfacet

where each n or v is a floating-point number in sign-mantissa-e-sign-exponent format, e.g., 2.648000e-002. The file concludes with:

endsolid name
An example ASCII STL of a sphericon

The structure of the format suggests that other possibilities exist (e.g., facets with more than one loop, or loops with more than three vertices). In practice, however, all facets are simple triangles.[citation needed]

Whitespace (spaces, tabs, newlines) may be used anywhere in the file except within numbers or words. The spaces between facet and normal and between outer and loop are required.[9]

Binary

Because ASCII STL files can be very large, a binary version of STL exists. A binary STL file has an 80-character header which is generally ignored, but should never begin with the ASCII representation of the string solid, as that may lead some software to confuse it with an ASCII STL file. Following the header is a 4-byte little-endian unsigned integer indicating the number of triangular facets in the file. Following that is data describing each triangle in turn. The file simply ends after the last triangle.

Each triangle is described by 12 32-bit floating-point numbers: 3 for the normal and then 3 for the X/Y/Z coordinate of each vertex – just as with the ASCII version of STL. After these follows a 2-byte ("short") unsigned integer that is the "attribute byte count" – in the standard format, this should be zero because most software does not understand anything else.[9]

Floating-point numbers are represented as IEEE floating-point numbers and are assumed to be little-endian, although this is not stated in documentation.

UINT8[80]    – Header                 -     80 bytes
UINT32       – Number of triangles    -      4 bytes
foreach triangle                      - 50 bytes:
    REAL32[3] – Normal vector             - 12 bytes
    REAL32[3] – Vertex 1                  - 12 bytes
    REAL32[3] – Vertex 2                  - 12 bytes
    REAL32[3] – Vertex 3                  - 12 bytes
    UINT16    – Attribute byte count      -  2 bytes
end

There are at least two non-standard variations on the binary STL format for adding color information:

  • The VisCAM and SolidView software packages use the two "attribute byte count" bytes at the end of every triangle to store a 15-bit RGB color:
    • bits 0–4 are the intensity level for blue (0–31),
    • bits 5–9 are the intensity level for green (0–31),
    • bits 10–14 are the intensity level for red (0–31),
    • bit 15 is 1 if the color is valid, or 0 if the color is not valid (as with normal STL files).
  • The Materialise Magics software uses the 80-byte header at the top of the file to represent the overall color of the entire part. If color is used, then somewhere in the header should be the ASCII string COLOR= followed by four bytes representing red, green, blue and alpha channel (transparency) in the range 0–255. This is the color of the entire object, unless overridden at each facet. Magics also recognizes a material description; a more detailed surface characteristic. Just after COLOR=RGBA specification should be another ASCII string ,MATERIAL= followed by three colors (3×4 bytes): first is a color of diffuse reflection, second is a color of specular highlight, and third is an ambient light. Material settings are preferred over color. The per-facet color is represented in the two "attribute byte count" bytes as follows:
    • bits 0–4 are the intensity level for red (0–31),
    • bits 5–9 are the intensity level for green (0–31),
    • bits 10–14 are the intensity level for blue (0–31),
    • bit 15 is 0 if this facet has its own unique color, or 1 if the per-object color is to be used.

The red/green/blue ordering within those two bytes is reversed in these two approaches – so while these formats could easily have been compatible, the reversal of the order of the colors means that they are not – and worse still, a generic STL file reader cannot automatically distinguish between them. There is also no way to have facets be selectively transparent because there is no per-facet alpha value – although in the context of current rapid prototyping machinery, this is not important.

Facet normal

In both ASCII and binary versions of STL, the facet normal should be a unit vector pointing outwards from the solid object.[16] In most software this may be set to (0,0,0), and the software will automatically calculate a normal based on the order of the triangle vertices using the "right-hand rule", i.e. the vertices are listed in counter-clock-wise order from outside.[citation needed] Some STL loaders (e.g. the STL plugin for Art of Illusion) check that the normal in the file agrees with the normal they calculate using the right-hand rule and warn the user when it does not. Other software may ignore the facet normal entirely and use only the right-hand rule. Although it is rare to specify a normal that cannot be calculated using the right-hand rule, in order to be entirely portable, a file should both provide the facet normal and order the vertices appropriately. A notable exception is SolidWorks, which uses the normal for shading effects.

Characteristics

It is not possible to use triangles to perfectly represent curved surfaces. To compensate, users often save enormous STL files to reduce the inaccuracy. However, native formats associated with many 3D design applications use mathematical surfaces to preserve detail losslessly in small files. For example, Rhino 3D[17] and Blender[18] implement NURBS to create true curved surfaces and store them in their respective native file formats, but must generate a triangle mesh when exporting a model to the STL format.

3D printing

Wikipedia logo

3D printers build objects by solidifying (SLA, SLS, SHS, DMLS, EBM, DLP) or printing (3DP, MJM, FDM, FFF, PJP, MJS)[19] one layer at a time. This requires a series of closed 2D contours (horizontal layers) that are filled in with solidified material as the layers are fused together. A natural file format for such a machine would be a series of closed polygons (layers or slices) corresponding to different Z-values. However, since it is possible to vary the layer thicknesses for a faster though less precise build, it was easier to define the model to be built as a closed polyhedron that can be sliced at the necessary horizontal levels. An incorrect facet normal can affect the way a file is sliced and filled. A slice at a different Z-value can be chosen to miss a bad facet or the file must be returned to CAD program to make corrections and then regenerate the STL file.

To properly form a 3D volume, the surface represented by any STL files must be closed (no holes or reversed vector normal) and connected, where every edge is part of exactly two triangles, and not self-intersecting. Since the STL syntax does not enforce this property, it can be ignored for applications where the void does not matter. The missing surface only matters insofar as the software that slices the triangles requires it to ensure that the resulting 2D polygons are closed. Sometimes such software can be written to clean up small discrepancies by moving vertices that are close together so that they coincide. The results are not predictable, and may require repair using another program. Vector 3D printers require a clean STL file and printing a bad data file will either fail to fill or may stop printing.

Other fields

STL model of the Utah teapot

STL is simple and easy to output. Consequently, many computer-aided design systems can output the STL file format. Although the output is simple to produce, mesh connectivity information is discarded because the identity of shared vertices is lost.

Many computer-aided manufacturing systems require triangulated models. STL format is not the most memory- and computationally efficient method for transferring this data, but STL is often used to import the triangulated geometry into the CAM system. The format is commonly available, so the CAM system will use it. In order to use the data, the CAM system may have to reconstruct the connectivity. As STL files do not save the physical dimension of a unit, a CAM system will ask for it. Typical units are mm and inch.

STL can also be used for interchanging data between CAD/CAM systems and computational environments such as Mathematica.

See also

  • 3D Manufacturing Format – Open source file format standard
  • Additive Manufacturing File Format – Open standard for describing objects for additive manufacturing processes such as 3D printing
  • PLY (file format) – File format designed to store three-dimensional data from 3D scanners
  • Voxel – Element representing a value on a grid in three dimensional space
  • Wavefront .obj file – Geometry definition file format
  • X3D – XML-based file format for 3D computer graphics

References

  1. ^ Noordvyk, Allan (2018-03-06). "model/stl". iana.org. IANA. Retrieved 2022-05-30.
  2. ^ a b "STL (STereoLithography) File Format Family". Library of Congress. Retrieved 2022-05-30.
  3. ^ StereoLithography Interface Specification, 3D Systems, Inc., July 1988
  4. ^ StereoLithography Interface Specification, 3D Systems, Inc., October 1989
  5. ^ SLC File Specification, 3D Systems, Inc., 1994
  6. ^ Grimm, Todd (2004). "3. The Rapid Prototyping Process". User's Guide to Rapid Prototyping. Society of Manufacturing Engineers. p. 55. ISBN 0-87263-697-6.
  7. ^ Burkardt, John (2014-07-10). "STLA Files - ASCII stereolithography files". Retrieved 2022-05-30.
  8. ^ "The StL Format: Standard Data Format for Fabbers". fabbers.com — Historical resource on 3D printing. Retrieved 2022-05-30.
  9. ^ a b c Burns, Marshall (1993). "6.5". Automated Fabrication: Improving Productivity in Manufacturing. Prentice Hall PTR. ISBN 9780131194625. OCLC 634954895.
  10. ^ Chua, C. K.; Leong, K. F.; Lim, C. S. (2003), "Chapter 6, Rapid Prototyping Formats", Rapid Prototyping: Principles and Applications (2nd ed.), World Scientific Publishing Co., p. 237, ISBN 981-238-117-1, The STL (STeroLithography) file, as the de facto standard, has been used in many, if not all, rapid prototyping systems.
  11. ^ "STL File Format for 3D Printing - Explained in Simple Terms". All3DP. 2016-11-17. Retrieved 2017-05-05.
  12. ^ a b "STL 2.0 May Replace Old, Limited File Format". RapidToday. Retrieved 2017-05-05.
  13. ^ Hiller, Jonathan D.; Lipson, Hod (2009). STL 2.0: A Proposal for a Universal Multi-Material Additive Manufacturing File Format (PDF). Solid Freeform Fabrication Symposium (SFF'09). Austin, Texas, USA: Cornell University. Archived from the original (PDF) on 2020-06-11. Retrieved 2017-05-05.
  14. ^ Bourke, Paul (October 1999). "STL format".
  15. ^ "STL (STereoLithography) File Format, ASCII". Library of Congress. Retrieved 2022-05-30.
  16. ^ Peddie, Jon (2013). The History of Visual Magic in Computers: How Beautiful Images are Made in CAD, 3D, VR and AR. London, England: Springer. pp. 54–57. ISBN 9781447149323. OCLC 849634980.
  17. ^ "What are NURBS?". www.rhino3d.com. Retrieved 2021-06-25.
  18. ^ "Structure — Blender Manual". docs.blender.org. Retrieved 2021-06-25.
  19. ^ Barnatt, Christopher (2013). 3D Printing: The Next Industrial Revolution. Nottingham, England: ExplainingTheFuture.com. pp. 26–71. ISBN 9781484181768. OCLC 854672031.

Read other articles:

County in North Dakota, United States Not to be confused with Eddy County, New Mexico. County in North DakotaEddy CountyCountyEddy County CourthouseLocation within the U.S. state of North DakotaNorth Dakota's location within the U.S.Coordinates: 47°43′N 98°54′W / 47.72°N 98.9°W / 47.72; -98.9Country United StatesState North DakotaFounded1885SeatNew RockfordLargest cityNew RockfordArea • Total644 sq mi (1,670 km2) • …

English poet and artist (1828–1882) Dante Gabriel RossettiPortrait of Dante Gabriel Rossetti c. 1871, by George Frederic WattsBornGabriel Charles Dante Rossetti(1828-05-12)12 May 1828London, EnglandDied9 April 1882(1882-04-09) (aged 53)Birchington-on-Sea, Kent, EnglandOccupationPoet, illustrator, painterEducationKing's College SchoolRoyal AcademySpouse Elizabeth Siddal ​ ​(m. 1860; died 1862)​ParentsGabriele RossettiFrances PolidoriRel…

County in Iowa, United States County in IowaMahaska CountyCountyThe courthouse in Oskaloosa, built 1886, is on the NRHP. The architect was Henry C. Koch.Location within the U.S. state of IowaIowa's location within the U.S.Coordinates: 41°20′02″N 92°38′44″W / 41.333888888889°N 92.645555555556°W / 41.333888888889; -92.645555555556Country United StatesState IowaFoundedFebruary 17, 1843Named forChief MahaskaSeatOskaloosaLargest cityOskaloosaArea •…

この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)出典検索?: コルク – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2017年4月) コルクを打ち抜いて作った瓶の栓 コルク(木栓、蘭&…

Italian entertainment company This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages) The topic of this article may not meet Wikipedia's notability guidelines for companies and organizations. Please help to demonstrate the notability of the topic by citing reliable secondary sources that are independent of the topic and provide significant coverage of it beyond a mere trivial mention. If notability …

此條目可参照英語維基百科相應條目来扩充。 (2021年5月6日)若您熟悉来源语言和主题,请协助参考外语维基百科扩充条目。请勿直接提交机械翻译,也不要翻译不可靠、低品质内容。依版权协议,译文需在编辑摘要注明来源,或于讨论页顶部标记{{Translated page}}标签。 约翰斯顿环礁Kalama Atoll 美國本土外小島嶼 Johnston Atoll 旗幟颂歌:《星條旗》The Star-Spangled Banner約翰斯頓環礁地…

Public university in Houston, Texas, US University of Houston–DowntownTypePublic universityEstablished1974; 50 years ago (1974)Parent institutionUH SystemAccreditationSACSAcademic affiliationsCUMUEndowmentUS$ 44,267,743PresidentLoren J. BlanchardProvostDeborah E. BordelonAcademic staff740Administrative staff368Students15,077LocationHouston, Texas, United States29°45′57″N 95°21′35″W / 29.765931°N 95.359684°W / 29.765931; -95.359684CampusUrba…

Stadio FlaminioLo stadio prima di Italia – Galles al Sei Nazioni 2007 Informazioni generaliStato Italia UbicazioneViale dello Stadio Flaminio, 00196 Roma Inizio lavori1º luglio 1957 Inaugurazione19 marzo 1959 Costo900000000 L. ProprietarioRoma Capitale GestoreFederazione Italiana Giuoco Calcio ProgettoAntonio Nervi Prog. strutturalePier Luigi Nervi CostruttoreIngg. Nervi & Bartoli Spa Informazioni tecnichePosti a sedere24 973 StrutturaStadio a gradinata unica CoperturaTribu…

 烏克蘭總理Прем'єр-міністр України烏克蘭國徽現任杰尼斯·什米加尔自2020年3月4日任命者烏克蘭總統任期總統任命首任維托爾德·福金设立1991年11月后继职位無网站www.kmu.gov.ua/control/en/(英文) 乌克兰 乌克兰政府与政治系列条目 宪法 政府 总统 弗拉基米尔·泽连斯基 總統辦公室 国家安全与国防事务委员会 总统代表(英语:Representatives of the President of Ukraine) 总理…

ヨハネス12世 第130代 ローマ教皇 教皇就任 955年12月16日教皇離任 964年5月14日先代 アガペトゥス2世次代 レオ8世個人情報出生 937年スポレート公国(中部イタリア)スポレート死去 964年5月14日 教皇領、ローマ原国籍 スポレート公国親 父アルベリーコ2世(スポレート公)、母アルダその他のヨハネステンプレートを表示 ヨハネス12世(Ioannes XII、937年 - 964年5月14日)は、ロー…

Seitenkyū, sebuah kuil Tao di Sakado, Saitama. Taoisme diyakini menjadi inspirasi bagi konsep spiritual dalam budaya Jepang.[butuh rujukan] Taoisme mirip dengan Shinto dalam hal itu juga dimulai sebagai agama asli di Tiongkok, meskipun lebih hermetis daripada perdukunan. Pengaruh Taoisme dapat dilihat di seluruh budaya tetapi pada tingkat yang lebih rendah daripada Konfusianisme. Taoisme dalam bentuk yang diambil di Jepang dapat dengan mudah dilihat sebagai takhayul atau astrologi dan k…

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada November 2022. Hubert von Meyerinckgambar dari 1933Lahir(1896-08-23)23 Agustus 1896Potsdam, JermanMeninggal13 Mei 1971(1971-05-13) (umur 74)Hamburg, Jerman BaratPekerjaanPemeranTahun aktif1917–1971 Hubert Hubsi von Meyerinck (23 Agustus 1896 –…

1965 single by Red SovineGiddyup GoSingle by Red Sovinefrom the album Giddyup Go B-sideKiss and the KeysReleasedOctober 1965RecordedAugust 1965Starday Sound StudioNashville, TennesseeGenreCountry, Truck-driving countryLength3:57LabelStardaySongwriter(s)Red Sovine and Tommy HillProducer(s)Tommy HillRed Sovine singles chronology Hold Everything (Till I Get Home) (1956) Giddyup Go (1965) Long Night (1966) Giddyup Go is a country music song made famous by Red Sovine. Released in 1965, the song was t…

2023 Android smartphones developed by Google Pixel 8Pixel 8 Pro Diagrams of the Pixel 8 (L) and Pixel 8 Pro (R)CodenamePixel 8: Shiba[1]Pixel 8 Pro: Husky[1]BrandGoogleSeriesPixelCompatible networks GSM / EDGE UMTS / HSPA+ / HSDPA LTE 5G sub-6 / mmWave First releasedOctober 12, 2023; 7 months ago (2023-10-12)Availability by region October 2023 Australia Austria Belgium Canada Denmark France Germany India Ireland Italy Japan Netherlands Norway Portugal Singa…

Commuter rail service in Buenos Aires This article is about the commuter rail line. For the national railway company, see General Manuel Belgrano Railway. Belgrano Sur LineDr. Antonio Sánez, current terminus, pictured in 2021OverviewService typeCommuter railStatusActiveLocaleGreater Buenos AiresPredecessor List Cía. General BA Midland First service1948; 76 years ago (1948)Current operator(s)Trenes ArgentinosFormer operator(s)ArgentrenWebsiteBelgrano SurRouteTerminiDr. A. Sáe…

Ini adalah nama Tionghoa; marganya adalah Lai. Lai Feng-wei賴峰偉 Magistrat Kabupaten PenghuPetahanaMulai menjabat 25 Desember 2018PendahuluChen Kuang-fuPenggantiPetahanaMasa jabatan20 Desember 1997 – 20 Desember 2005PendahuluJohn Lieh ChengPenggantiWang Chien-faMenteri EksaminasiMasa jabatan29 Juli 2010 – 10 Februari 2012PendahuluYang Chao-hsiangPenggantiTung Pao-cheng Informasi pribadiLahirPenghu, Taiwan20 September 1953 (umur 70)KebangsaanRepublik TiongkokPar…

Untuk kegunaan lain, lihat Dr. Jekyll dan Tuan Hyde. Kasus Aneh Dr Jekylldan Tuan Hyde Halaman judul dari edisi pertama London (1886)PengarangRobert Louis StevensonNegaraBritania RayaBahasaInggrisPenerbitLongmans, Green & co.Tanggal terbit5 Januari 1886ISBNISBN N/A Invalid ISBN Kasus Aneh Dr Jekyll dan Tuan Hyde atau hanya Dr. Jekyll dan Tuan Hyde (judul aslinya Strange Case of Dr. Jekyll and Mr. Hyde) adalah novel yang ditulis oleh penulis Skotlandia Robert Louis Stevenson ya…

This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Changhe Aircraft Industries Corporation – news · newspapers · books · scholar · JSTOR (March 2017) (Learn how and when to remove this message) Changhe Aircraft Industries CorporationCompany typeSubsidiaryIndustryAerospace, defenseFounded1969; 55 years…

Disambiguazione – Pirandello rimanda qui. Se stai cercando altri significati, vedi Pirandello (disambigua). Luigi Pirandello nel 1934 Premio Nobel per la letteratura 1934 Luigi Pirandello (Girgenti, 28 giugno 1867 – Roma, 10 dicembre 1936) è stato un drammaturgo, scrittore e poeta italiano, insignito del Premio Nobel per la letteratura nel 1934. Per la sua produzione, i temi affrontati e l'innovazione del racconto teatrale è considerato tra i più importanti drammaturghi del XX…

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (ديسمبر 2018) بوركينا فاسو في الألعاب الأولمبية علم بوركينا فاسو رمز ل.أ.د.  BUR ل.أ.و. اللجنة الأولمبية والرياضي…