Преобразование формата XYZ в формат STL

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

1 ответ

Если ваш формат "XYZ" имеет другой порядок для нормалей и вершин, переставьте их в формат STL в другой переменной и сохраните это.

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

Формат STL (как в комментариях) имеет определенный способ построения;

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 и перегруженные << и >> для извлечения и сохранения двоичного формата.

Если вам нужен пример для перегрузки операторов, посмотрите здесь

Другие вопросы по тегам