aspose.info
CS

Formát souboru STL

Aktualizováno

Co je soubor STL?

STL, zkratka pro stereolitrografii, je zaměnitelný formát souboru, který představuje 3-rozměrnou povrchovou geometrii. Souborový formát nachází uplatnění v několika oblastech, jako je rychlé prototypování, 3D tisk a počítačově podporovaná výroba. Představuje plochu jako řadu malých trojúhelníků, známých jako fasety, kde každá faseta je popsána kolmým směrem a třemi body představujícími vrcholy trojúhelníku. Výsledná data používají aplikace k určení průřezu 3D tvaru, který má výrobce postavit. Ve formátu souboru STL nejsou k dispozici žádné informace pro reprezentaci barvy, textury nebo jiných běžných CAD atributů modelu.

Stručná historie

Vývoj formátu souborů STL se datuje od roku 1987. Byl vyvinut společností 3D Systems pro jeho použití v komerčních 3D tiskárnách. Revidovaná verze formátu souboru STL, známá jako STL 2.0, byla navržena v roce 2009 s aktualizacemi formátu souboru.

Specifikace formátu souboru

Soubor STL představuje geometrii povrchu pomocí faset. Plochy definují povrch 3D objektu a jsou jednoznačně identifikovány jednotkovou normálou, což je čára kolmá k trojúhelníku o délce 1,0, a třemi vrcholy. Pro každou fasetu je uloženo celkem 12 čísel jako Normální a každý vrchol je specifikován třemi souřadnicemi. Soubor StL neobsahuje žádné informace o měřítku; souřadnice jsou v libovolných jednotkách.

Specifikace formátu souboru STL lze zkoumat z následujících dvou hledisek.

Orientace faset

Orientace fasety je určena směrem normály jednotky a pořadím, ve kterém jsou uvedeny vrcholy. Orientace faset je určena dvěma způsoby takto:

  • Směr normály je ven
  • Vrcholy jsou uvedeny zvenčí ve směru proti směru hodinových ručiček, přičemž se řídí pravidlem pravé ruky.

Pravidlo Vertex to Vertex

Podle tohoto pravidla sdílí každý trojúhelník dva vrcholy s každým ze sousedních trojúhelníků. Vrchol jednoho trojúhelníku tedy nemůže ležet na straně jiného trojúhelníku.

Formáty souborů

STL je k dispozici v ASCII i v binárních reprezentacích pro kompaktní formát souborů.

Formát STL ASCII

Verze ASCII formátu souboru STL je zapsána v prostém ASCII. Vzhledem k velké velikosti však není formát souboru vybrán jako preferovaný formát pro použití. Syntaxe souboru ASCII STL je následující:

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

Slova s tučným písmem představují klíčová slova, která by měla být vždy malá. Symboly psané kurzívou jsou proměnné, které mají být nahrazeny uživatelem zadanými hodnotami. Číselná data v řádcích normální fasety a vrchol jsou s plovoucí jednoduchou přesností, například 1,23456E+789. normální souřadnice může mít úvodní znaménko mínus; vertex souřadnice nemusí.

Binární formát STL

Binární formát používá IEEE celé číslo a číselnou reprezentaci s plovoucí desetinnou čárkou. Formát souboru je reprezentován následovně:

PoleInformace
Záhlaví80 znaků
Počet trojúhelníků4bajtové malé endian celé číslo bez znaménka
Data pro každý trojúhelník12 32bitových čísel s plovoucí desetinnou čárkou

Propracovanější pohled na formát souboru je uveden níže.

UINT8[80] – Header
UINT32 – Number of triangles


foreach triangle
REAL32[3] – Normal vector
REAL32[3] – Vertex 1
REAL32[3] – Vertex 2
REAL32[3] – Vertex 3
UINT16 – Attribute byte count
end

Reference

Viz také