Модуль «Штамп» в Трифкаме

Оглавление

Пользовательский сценарий

  1. Создать “Рабочий стол”
  2. Создать “Штамп”
  3. Импортировать меш оригинальной детали из файла STP
  4. Преобразовать оригинальный меш в карту высот
  5. При необходимости
    1. проверить дефекты карты высот
    2. вылечить карту
    3. отсечь дно
  6. Рассчитать «Таргет»
  7. Импортировать меш строжки
  8. Преобразовать меш строжки в карту высот на общей XY-сетке
  9. Создать ограничивающий контур
    1. вручную
    2. по bbox меша
    3. по сечению меша
  10. Сгенерировать целевой объём: строжка + таргет + контур => Меш целевого объёма
  11. Выполнить слайсинг объёма: MESH объёма → CAMROOT → CAMSTACK → CAMSLICE → CAMPATH
  12. Выполнить постпроцессинг → CLDATA/NCL

Пошаговые скриншоты пользовательского сценария для штампа 1089

Для компактности показана и форма ввода, и сразу результа

1. Добавление рабочего стола

Пустой групповой объект, но его можно перемещать и вращать.

Рисунок 1

2. Добавление штампа

Тоже пустой, тоже можно перемещать и вращать.

Рисунок 2

3. Импорт STP

Вызов команды:

Рисунок 3

Импорт работает.

Рисунок 4

Примечание. Игнорирует сборки. После нескольких конвертаций в моделях образуются отверстия, которые не всегда восстановимы.

4. Преобразование в карту высот

Чисто технический шаг, для упрощения лечения

Рисунок 5
Рисунок 6

TODO. Импортировать STP сразу в карту высот.

5. Лечение

  1. Отсечь дно – уходят провалы
Рисунок 7

Но остались еще отверстия

Рисунок 8
  1. Лечим – зашиваем отверстия, убираем выбросы и пр.
Рисунок 9

Стало:

Рисунок 10

6. Генерация таргета

Сейчас доступны 2 режима

Рисунок 11

Параметры обычного и экспертного режима

Рисунок 12

Примечание: экспертный режим – временное решение для этапа отладки алгоритмов. Потом уберем, оставим только обычный.

Сгенерированный таргет:

Рисунок 13

Специально сделал для восстановленной модели – видно X-образную часть там, где было крупное отверстие.

7, 8. Меш строжки

Стандартная операция импорта STL.

Рисунок 14

Результат:

Рисунок 15

Конвертация в карту высот – аналогично шагу 4.

9. Генерация ограничивающего контура по строжке.

Вызов команды.

Рисунок 16

Параметры и результат

Рисунок 17

Не всегда возможно получить автоматически подходящий контур. Но всегда есть ручное редактирование :)

Рисунок 18
Рисунок 19

TODO: добавить опцию скрывать номера точек. Упрощать и сглаживать контур перед выдачей – неудобно редактировать вручную 500 точек. Такое количество не нужно.

10. Генерация целевого объема

Рисунок 20
Рисунок 21

Предусловия: - Контур не должен выходить за пределы обеих карт в плоскости XY. - Карты должны иметь одинаковое разрешение (resolution); их сетки автоматически совмещаются расширением и сдвигом без интерполяции.

TODO: в некоторых случаях дает артефакты, проверить. Проявлялось когда таргет локально близок к строжке (например, за счет накопленного снаружи материала).

11. Слайсинг

Рисунок 22
Рисунок 23

Параметры алгоритма (продолжение)

Рисунок 24

Результат

Рисунок 25

При необходимости можно просматривать и редактировать отдельные слои и траектории.

Рисунок 26

Кстати, нормали внешнего контура ориентированы правильно:

Рисунок 27

TODO: Добавить аккуратное слглаживание и постобработку слоя. Слои после строжки имеют извилистый контур и мелкие островки. Добавить удаление отверстий площадью меньше заданного.

(?) Что делает с дефектами слоев итальянский софт?

12. Постпроцессинг

Сохраняем

Рисунок 28
Рисунок 29

TODO: проверить в Эврике. Один-в-один мы вряд ли попали, однозначно будут расхождения.

Заключение

К следующему этапу.

Модуль:

Трифкам:

В 2027: добавление модуля в сборку силами пользователей (прописали конфиг, положили архив – заработало).