我正在为一个在我的实体中创建XYZ格式的项目工作。我怎么能用C#或c ++从这种格式转换成立体光刻(STL)格式?这项工作有没有图书馆?
答案 0 :(得分:2)
如果你的“XYZ”格式对法线有不同的排序,顶点会将它们重新排列为另一个变量中的STL格式并保存。
请注意,如果以二进制格式保存,那么在C ++中你可以使用fstream库,在这种情况下,重载<<和>>运算符使您可以写入和读取二进制文件“C ++方式”。
STL格式(与评论中一样)有一个certain way to be built up;
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
你可以将它包装在一个类中(注意REAL32
等于float
)并使用fstream并重载<<和>>运算符检索和存储二进制格式。
如果您需要一个重载运算符的示例,请查看here