Конвертируем STL-файлы в STEP

14 декабря 2023
0 комментариев

Иногда 3D-модели так или иначе не соответствуют требованиям, но поменять дизайн будет сложно, если модель сохранена в формате STL. Облегчить задачу можно конвертацией в более удобный STEP — стандартный формат систем автоматизированного проектирования.

Конвертируем STL-файлы в STEP

STL — самый распространенный формат 3D-моделей, в том числе используемых в 3D-печати. Сокращение расшифровывается как Stereolithography (стереолитография), так как формат изначально создан компанией 3D Systems именно под эту аддитивную технологию. С другой стороны, технологии 3D-печати уже давно не ограничиваются стереолитографией, так что такая расшифровка несколько устарела. Отсюда и альтернативные варианты вроде Standard Tesselation Language (Стандартный язык тесселяции) или Standard Triangulation Language (Стандартный язык триангуляции). Тесселяция — ключевое слово: так называется процесс создания объемных моделей из полигонов, чаще всего из треугольников.

STEP расшифровывается как Standard for the Exchange of Product model data. Вообще-то, это целый набор стандартов ISO, но такое же обозначение носит и файловый формат, распознаваемый практически всеми системами автоматизированного проектирования (САПР). Вся суть именно в стандартизации, так что файлы STEP можно создавать в одних САПР и при необходимости редактировать в других.

Главная разница между этими двумя форматами в простоте редактирования STEP, что логично, так как этот формат создавался под системы автоматизированного проектирования. По этой причине время от времени и возникает необходимость конвертировать STL в STEP, если нужно как-то отредактировать 3D-модель. Как это делается, разберемся ниже.

Зачем конвертировать в STEP

На большинстве онлайн-площадок 3D-модели предлагаются в формате STL. Как правило, исключение составляют сайты, ориентированные на 3D-дизайн, например GrabCAD. Это нормально в тех случаях, когда нужно просто напечатать изделие или даже отредактировать в Blender, что уже требует определенных художественных навыков. Если же возникает необходимость в параметрическом моделировании или редактировании, STL — мягко говоря, не самый оптимальный вариант.

Конвертируем STL-файлы в STEP


Почему так? Проблема кроется в принципе построения объемных моделей. Если провести параллель с двухмерной графикой, STL-файлы можно сравнить с растровыми изображениями, состоящими из пикселей определенных цветов. Характерный пример — формат JPEG. Растровые изображения плохо поддаются масштабированию вверх: если увеличить размер картинки, увеличится и размер пикселей. Разрешение не вырастет, так что разглядывать монитор через лупу бессмысленно (это касается и вас, Александр Иванович). Файлы STEP, с другой стороны, больше похожи на векторные файлы, такие как SVG. Векторные файлы состоят из набора математических функций, а потому их можно масштабировать без потери качества.

Формат STEP дает схожее преимущество: такие файлы не только содержат полигональные сетки (меши), то есть информацию о внешней геометрии объектов, но и умеют различать пустотелые, твердотельные и поверхностные модели. Более того, файлы в формате STEP могут содержать дополнительную информацию, например расходный материал и габариты изделия. Если, например, сделать 3D-модель в SolidWorks, сохранить в формате STEP, а затем открыть файл в AutoCAD, новая программа будет знать все параметры изделия.

Конвертируем STL-файлы в STEP


В итоге STL-файлы содержат простые полигональные сетки, а STEP — твердотельные модели с дополнительными параметрами. По этой причине конвертировать STL в STEP сложнее, чем, например, STL в OBJ. По этой же причине не существует готовых решений вроде онлайн-приложений. Первым делом перед редактированием полигональную сетку необходимо сконвертировать в твердотельную модель, что мы и сделаем.

Fusion 360

Рассмотрим два решения. Первое — система автоматизированного проектирования Autodesk Fusion 360.

Конвертируем STL-файлы в STEP


Открываем программу, сразу попадаем в рабочее пространство и выполняем следующие шаги:

1. Вставляем сетку

Открываем Вставить > Вставить меш (Insert > Insert Mesh), затем выбираем нужный STL-файл. Как вариант, можно импортировать и форматы OBJ или 3MF — они тоже поддерживаются.

После загрузки полигональной сетки проверяем и при необходимости меняем настройки в меню Insert Mesh:

  • Единицы измерений (Units). Здесь можно выбрать миллиметры, сантиметры, метры или дюймы.
  • Ориентация (Flip Up Direction). Это функция позволяет менять пространственную ориентацию модели, если она по какой-то причине загрузилась вверх ногами или на боку. Случается довольно редко, но бывает.
  • Расположение (Position). Здесь можно менять центровку модели.
  • Числовой ввод (Numerical Input). С помощью этой функции можно задавать более точное расположение редактируемого объекта.

2. Конвертируем сетку в твердотельный объект

Конвертируем STL-файлы в STEP


Открываем вкладку «Сетка» (Mesh), а затем меню «Изменить» (Modify). Находим «Сконвертировать меш» (Convert Mesh), нажимаем и переходим в новое меню, где снова потребуется определиться с настройками:

  • Тело (Body). Выбираем редактируемый объект в браузере или прямо в окне.
  • Операция (Operation). Здесь две опции — параметрический режим (Parametric) и базовый (Base Feature). В принципе, подойдет и тот, и другой, хотя в параметрическом режиме все операции записываются, что довольно удобно.
  • Метод (Method). Снова два варианта — граненый (Faceted) и призматический (Prismatic). Первый просто конвертирует секту в твердое тело, как есть, а второй объединяет соседние грани сетки. Второй метод подходит лучше, так как с моделью будет проще работать после конвертации. Проблема в том, что этот вариант доступен только в платных версиях программы.

Если у программы возникнут трудности с объединением граней, ей можно помочь инструментом «Создать группы граней» (Generate Face Groups), доступном в меню «Подготовить» (Prepare).

3. Сохраняем в формате STEP

Конвертируем STL-файлы в STEP


После преобразования в твердое тело остается лишь сохранить в нужном формате, то есть STEP. Результат можно будет редактировать в любой программе параметрического моделирования:

  • Открываем меню «Файл» (File) в левом верхнем углу и выбираем «Экспорт» (Export).
  • Вводим имя файла, выбираем формат STEP и нажимаем на «Экспортировать» (Export).

Все готово. Только имейте в виду, что при «экспорте» файл сохраняется на компьютер, а при выборе функции «Сохранить как» (Save as) — в облачном хранилище.

FreeCAD

Второй инструмент — бесплатная, опенсорсная система автоматизированного проектирования FreeCAD. Рабочее пространство этой программы организовано в так называемые «верстаки» — наборы инструментов для разных операций. Нам потребуется верстак Part Workbench, а конкретно меню «Деталь» (Part).

Конвертируем STL-файлы в STEP


Во FreeCAD нет опции «призматического» объединения граней, как во Fusion 360. Процесс скорее напоминает «граненый» вариант. В итоге все равно получается твердотельная модель, которую можно редактировать с помощью параметрических инструментов.

Здесь все очень просто:

  • Открываем Файл > Открыть (File > Open) и выбираем нужный STL-файл.
  • Переходим на верстак Part Workbench.
  • Выбираем полигональную сетку в списке или в окне просмотра.
  • Нажимаем «Деталь» (Part) в верхней панели, а затем выбираем «Создать форму из меша» (Create shape from mesh).
  • Оставляем допуск по умолчанию (0,1) и нажимаем Okay.

Теперь на экране будут видны две модели — исходная полигональная сетка и полученное твердое тело. Выбираем твердотельную модель, открываем меню «Файл» (File), затем «Экспорт» (Export), выбираем формат STEP и сохраняем.

Здесь тоже важно выбирать именно «Экспорт», а не «Сохранить как» (Save as), так как во втором случае файл будет сохранен в собственном формате FreeCAD Document. Если вы собираетесь редактировать модель во FreeCAD, это не проблема. В противном случае стоит сохранять в формате STEP через экспорт.

Адаптированный перевод статьи STL to STEP: How to Convert STL Files to STEP, опубликованной на сайте All3DP.