Перейти к публикации

Макрос для пакетного сохранения разверток из всех компонентов из сборки


artem_cad

Рекомендованные сообщения

Здравствуйте,

Вот макрос, который, надеюсь будет полезным. Макрос позволяет сохранять развертки в формате DXF или DWG из всех компонентов с листовым металлом в активной сборке. Можно указать опции сохранения а также шаблон для имени, в котором можно использовать значения из свойств списка вырезов, имя файла, элемента, конфигурации. Ниже видео демонстрация и ссылка на скачивание:

 

 

Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...


UnPinned posts
07.04.2021 в 14:14, Kelny сказал:

Может макрос не при делах, а нужно всего лишь построить деталь ровно в пространстве модели?

В пространстве модели все ок, как полагается, а при сохранении через макрос может развернуть на 90 или 180 градусов. Кто-нибудь знает в чем может быть причина??

Ссылка на сообщение
Поделиться на других сайтах
5 часов назад, Deanisik сказал:

В пространстве модели все ок

Что вы имеете ввиду? При нажатии на на клавиатуре CTRL+1 видете модель с нужным поворотом в плоскости экрана?

 

5 часов назад, Deanisik сказал:

при сохранении через макрос может развернуть на 90 или 180 градусов.

А при сохранении без макроса?

 

5 часов назад, Deanisik сказал:

Кто-нибудь знает в чем может быть причина??

Вам ваши модели ближе. Вы проанализировали чем отличаются модели в которых всё ОК и которые разворачиваются?

Ссылка на сообщение
Поделиться на других сайтах
  • 8 месяцев спустя...

Спасибо автору за отличный макрос. Один вопрос: как сделать название папки с дхф (по умолчанию DXFs) такой же как папка с моделью (свойство FolderName). Пробовал разные вариант написания, не получается.

Ссылка на сообщение
Поделиться на других сайтах
42 минуты назад, anti84 сказал:

Спасибо автору за отличный макрос. Один вопрос: как сделать название папки с дхф (по умолчанию DXFs) такой же как папка с моделью (свойство FolderName). Пробовал разные вариант написания, не получается.

например вот так:

Const OUT_NAME_TEMPLATE As String = "DXFs\<_FileName_>_<_FeatureName_>_<_ConfName_>_<$CLPRP:Description>.dxf"

 

Ссылка на сообщение
Поделиться на других сайтах
17 минут назад, Snake 60 сказал:

например вот так:




Const OUT_NAME_TEMPLATE As String = "DXFs\<_FileName_>_<_FeatureName_>_<_ConfName_>_<$CLPRP:Description>.dxf"

 

Вы добавили название папки в конец файла? Мне бы надо имя папки сохранения dxf, что-то типа:

 

Const OUT_NAME_TEMPLATE As String = "Резка_<$PRP:FolderName>\<$PRP:Толщина>\<_FileName_>-<_ConfName_>-<$PRP:Толщина>мм-<$PRP:Qty>шт.dxf" 

 

Сейчас так не работает

Изменено пользователем anti84
Ссылка на сообщение
Поделиться на других сайтах
15 часов назад, Snake 60 сказал:

@anti84 А свойство <$PRP:FolderName> в моделях у Вас заполнено?

Да, заполнено. И в настройках модели, и в настройках конфигурации. Правда вычисленное значение по этому свойству не название папки, а путь "D:\Модели\Модель.sldprt". Ну да ладно, нет так нет.

Ссылка на сообщение
Поделиться на других сайтах
07.04.2022 в 06:58, Deanisik сказал:

В пространстве модели все ок, как полагается, а при сохранении через макрос может развернуть на 90 или 180 градусов. Кто-нибудь знает в чем может быть причина??

Возможно активна настройка "Выравнивать развертку"

10 часов назад, anti84 сказал:

Правда вычисленное значение по этому свойству не название папки, а путь "D:\Модели\Модель.sldprt". Ну да ладно, нет так нет.

Ну и что Вы тогда хотите? Там же получается несуществующий путь, конечно макрос не сможет сохранить. Могу допилить макрос под Ваши нужды, если желаете.

21.12.2022 в 19:50, anti84 сказал:

Вы добавили название папки в конец файла?

Почему в конец - в начало

Ссылка на сообщение
Поделиться на других сайтах
  • 6 месяцев спустя...

Доброго времени! Спасибо за макрос. Все работает, почти настроил под себя. Подскажите, как сделать, чтобы вместо того чтобы макрос создавал папку Sheet_metal, он создавал папку с таким же названием, в котором лежит деталь/сборка?

Спасибо!

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
27.06.2023 в 08:57, Surgeon сказал:

Доброго времени! Спасибо за макрос. Все работает, почти настроил под себя. Подскажите, как сделать, чтобы вместо того чтобы макрос создавал папку Sheet_metal, он создавал папку с таким же названием, в котором лежит деталь/сборка?

Спасибо!

Так же было был очень удобно, если бы макрос перед разверткой, в свойства детали, в графу "Автор" вставлял определенное значение, из буфера обмена, например. Это значение у меня в эскизе на детале и играет роль ее маркировки. Перед выполнением макроса приходится каждую деталь сборки открыть и вставить это хначение вручную.

Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...
27.06.2023 в 08:57, Surgeon сказал:

Доброго времени! Спасибо за макрос. Все работает, почти настроил под себя. Подскажите, как сделать, чтобы вместо того чтобы макрос создавал папку Sheet_metal, он создавал папку с таким же названием, в котором лежит деталь/сборка?

Спасибо!

Получить адрес детали и передать его в путь сохранения файла

Ссылка на сообщение
Поделиться на других сайтах
07.11.2020 в 14:24, Володькарукиизж... сказал:

Спасибо, помогло. "Обновлять автоматически" галочка стояла, а "автоматически создать список вырезов" нет. И если где то в одном файле ее не поставить, то на нем весь процесс прерывается. Только макрос все файлы из сборки в один файл  *.dxf перезаписывает. И, может вы знаете как реализовать функцию экспорта только отображаемых (высвеченных) деталей. Возможность такая есть, видел у одного человека, но делиться он не хочет.

очень просто

нужно проверять model на значение nothing (погашено)

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...
28.07.2023 в 08:06, Sturmann сказал:

Получить адрес детали и передать его в путь сохранения файла

Ну так то логично, да. Но синтаксис я, к сожалению не знаю. да и не программист ни разу. Буду ковырять, в любом случае, спасбо

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

Добрый день, пользуюсь этим же макросом, выдаю по 50-100 конфигурации, полет нормальный) но есть один момент.
Деталь создана из нескольких листовых металлов, когда в ручную разворачивать есть выбор "развертка 4" или "развертка 5"
макрос также разворачивает  оба листовых металла, но переписывает друг друга, т.е. сперва сохраняет  "листовой металл4"  потом еще раз сохраняет эту же деталь только "листовой металл5" , а имя файла то одинаковая и получается он заменяет. Что нужно сделать в макросе, чтобы  в название файла  добавилось  "развертка 4" и "развертка 5"?

Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...
  • 2 недели спустя...

Насчет подсчета деталей. Работаю с листовым металлом. Как суммировать зеркальные детали? Как в макросе записать "Если название производной конфигурации детали содержит Mirror то родительскому конфигу добавить соответствующее количество" ? Ну или " если у конфигурации детали есть подконфигурация то объеденить их"

Ссылка на сообщение
Поделиться на других сайтах
5 часов назад, invisible сказал:

Насчет подсчета деталей. Работаю с листовым металлом. Как суммировать зеркальные детали? Как в макросе записать "Если название производной конфигурации детали содержит Mirror то родительскому конфигу добавить соответствующее количество" ? Ну или " если у конфигурации детали есть подконфигурация то объеденить их"

 

А если нержа полированная?

Тогда и развёртки будут зеркальные.

Нельзя всё в одну кучу.

Ссылка на сообщение
Поделиться на других сайтах
  • 4 месяца спустя...

Добрый день, коллеги, подскажите по макросу, пожалуйста. После перехода с 2016 солида на 2020 sp5  макрос при сохранении dxf не убирает линии гиба, может кто сталкивался?  image.png

MacrosDXF.swp

Ссылка на сообщение
Поделиться на других сайтах
11 часов назад, oleg1993 сказал:

Добрый день, коллеги, подскажите по макросу, пожалуйста. После перехода с 2016 солида на 2020 sp5  макрос при сохранении dxf не убирает линии гиба, может кто сталкивался?  

Откройте макрос редактором VBE и замените вот эту строку:

Цитата

Const FLAT_PATTERN_OPTIONS As Integer = SheetMetalOptions_e.ExportBendLines + SheetMetalOptions_e.ExportFlatPatternGeometry

на вот эту

Цитата

Const FLAT_PATTERN_OPTIONS As Integer = SheetMetalOptions_e.ExportFlatPatternGeometry

 

Изменено пользователем Snake 60
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • maxx2000
      Да вот так ему хочется. Вот такие гады разработчики. Небось и в мануале всё это описали. Я негодую вместе с тобой.
    • Максим604
      Поэтому и вопрос. почему шопмилл подачу меняет, когда пишешь через него(макропеременые), а когда через G код не меняется. как шопмилл просчитывает новую подачу я понимаю, но не понимаю как прравильно и почему именно так правильно, а не наоброт. почему шопмилл переводит подачу с движения по траектории на движение по центру?     
    • Snake 60
      Так а зачем, если вот эта кнопка  сохраняет все детали и подсборки входящие в нее: При желании можно повесить на горячую кнопку через Настройка-Клавиатура Или пересохранить имеется ввиду создать копию с новым именем? Если да, то для этих целей я бы посоветовал крутой макрос с именем Коперник от @tompsongun См. пост выше.
    • maxx2000
      ну хотя бы то что одна написана через макропеременные, вторая в джи кодах. Ты считаешь что при одинаковом результате у них одинаковые алгоритмы?  
    • Максим604
      А что должно смущать?
    • maxx2000
      Ничего не смущает?
    • Максим604
      разные уп, но смысл одинаковый. в первом варианте подача меняется, во втором сохраняется.   Это то что не устраивает   M0 E_MI_TR(1,0,0,"REZBA_D11.9_P2_VARGUS","",1,0.05,2,50,2,1297,-16.2,91,2,10,14,1.0826,1.083,0.1,0,3,0.03937,0.31831,,,,1,0,"ISO_METRIC","M14");*RO* E_MI_TR(1,0,0,"REZBA_D11.9_P2_VARGUS","",1,0.05,2,50,2,1298,-16.2,91,2,10,14,1.0826,1.083,0.1,0,3,0.07874,0.63662,,,,-1,0,"ISO_METRIC","M14");*RO* _E_P002: E_PS_CIR(1,0,0,-14,90,0,,0,,102.5,12.857,30,8,10,0,,);*RO* CALL "END.SPF";#SM;*RO* E_END(0,1,0);*RO* M30 ;#SM;*RO* _____________________________________________   это устраивает N104 T=" ФРЕЗ. РЕЗЬБЫ - 12" N106 M6 N108 G0 X0. Y0. S1326 M3 D1 N110 Z50. N112 Z5. N114 G1 Z-25. F198.9 N116 G41 Y-4.95 N118 G3 X9.95 Y0. Z-24.5 I3.74372 J4.95 N120 Z-22.5 I-9.95 J0. N122 Z-20.5 I-9.95 J0. N124 Z-18.5 I-9.95 J0. N126 Z-16.5 I-9.95 J0. N128 Z-14.5 I-9.95 J0. N130 Z-12.5 I-9.95 J0. N132 Z-10.5 I-9.95 J0. N134 Z-8.5 I-9.95 J0. N136 Z-6.5 I-9.95 J0. N138 Z-4.5 I-9.95 J0. N140 Z-2.5 I-9.95 J0. N142 Z-.5 I-9.95 J0. N144 X0. Y9.95 Z0. I-9.95 J0. N146 X-4.95 Y0. Z.5 I0. J-6.20628 N148 G1 G40 X0.
    • sklide008
      Да точно, подзабыл уже все. а можно ли горячими клавишами открыть деталь из сборки и пересохранить не открывая деталь?
    • maxx2000
      наверное пришло время выложить программу которая устраивает и которая не устраивает
    • Максим604
      Резьбу фрезерует. Просто выходит что подача меняется в разы.    Писал в мастеркаме  и крео. Там всё понятно. Подача=обороты*кол-во зубьев*подача на зуб. И с такой скоростью режет.    А когда пишешь через шопмилл ( стойка синумерик). То подача меняется от написаной
×
×
  • Создать...