2016-12-25 103 views
2

在ASCII STL文件中包含多個實體已被很好地描述。如何創建包含多個實體的二進制STL文件?

solid name1 
    facet normal N.x N.y N.z 
     outer loop 
      vertex V1.x V1.y V1.z 
      vertex V2.x V2.y V2.z 
      vertex V3.x V3.y V3.z 
     endloop 
    endfacet 
    facet … 
     … 
    endfacet 
    … 
endsolid name1 
solid name2 
    … 
endsolid name2 
… 

但是,二進制STL文件描述的格式沒有提及任何關於包含多個實體對象的內容。

 80 Bytes string Header 
     4 Bytes uint32 Facets count 

     | 4 Bytes float N.x 
     | 4 Bytes float N.y 
     | 4 Bytes float N.z 
     | 4 Bytes float V1.x 
     | 4 Bytes float V1.y 
     | 4 Bytes float V1.z 
facet1| 4 Bytes float V2.x 
     | 4 Bytes float V2.y 
     | 4 Bytes float V2.z 
     | 4 Bytes float V3.x 
     | 4 Bytes float V3.y 
     | 4 Bytes float V3.z 
     | 2 Bytes uint16 Attrib 

facet2| … 

facet3| … 

… 
+0

無論如何,STL中固體的含義是什麼?它不是三角形嗎?而你如何安排他們取決於你。所以把它們排列成固體。 –

+0

如果您的二進制STL文件被其他應用程序讀取,則可能不是這種情況。我的目的是生成一個STL文件,其中包含多個實體對象作爲模型的不同邊界,並將其導入到ANSYS Fluent/ICEM CFD軟件中。 – Mimi

+0

在這裏,「堅實」只是一個部分。 – Mimi

回答

0

在二進制格式中,每個方面都有一個屬性(attrib)。 attrib相同的方面將被視爲同一固體的一部分。

相關問題