2013-06-10 1 views
-2

Я работаю над проектом, который создает XYZ-формат в моей твердой части. Как я могу преобразовать из этого формата в формат стереолитографии (STL) с помощью C# или C++? Есть ли библиотека для этой работы?Преобразование формата XYZ в stl формат

+0

ваш вопрос очень неясен, по крайней мере для меня, что вы хотите достичь? что вы подразумеваете под форматом STL? –

+2

@GamErix: Учитывая тэг 3D, это предположительно [this] (http://en.wikipedia.org/wiki/STL_ (file_format)) формат. –

+0

Формат stl является видом 3D-дизайна – Mahyar

ответ

2

Если ваш формат «XYZ» имеет различный порядок для нормалей и вершин, перестройте их в формат STL в другой переменной и сохраните это.

Обратите внимание, что если вы сохраняете двоичный формат, то в C++ вы можете использовать библиотеку fstream, в этом случае также очень полезно перегрузить операторы < < и >>, чтобы вы могли писать и читать из двоичного файла «путь С ++».

Формат 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