Jump to content

Сделай свою работу в Solidworks эффективнее


Recommended Posts

clavr

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

Скрытый текст

Макрос предназначен для проверки сборки SolidWorks на наличие погашенных гибов в развертках деталей листового металла.

Принцип работы следующий.

  1. Предварительная проверка
    Перед началом основной работы макрос проходит по всем компонентам сборки и проверяет их состояние.
    Если в сборке обнаружены сокращенные (lightweight) компоненты, макрос останавливается и не выполняет дальнейшую проверку.
    Это сделано для того, чтобы избежать некорректных результатов.
    В таком случае пользователю выводится сообщение с просьбой загрузить все компоненты и запустить макрос повторно.
  1. Сбор компонентов
    Макрос получает полный список компонентов сборки (включая компоненты внутри подсборок).
    Далее выполняется фильтрация компонентов. Из проверки исключаются:
  • погашенные компоненты
  • envelope-компоненты
  • компоненты Toolbox
  • библиотечные компоненты
  • компоненты, расположенные в папках с названиями «Покупные» и «Оборудование»

После этого остаются только реальные детали, участвующие в сборке.

  1. Отбор листовых деталей
    Из оставшихся компонентов макрос определяет детали листового металла.
    Проверка выполняется без открытия файлов — через тела компонента в сборке.

Для дальнейшей обработки формируется список уникальных комбинаций:
файл детали + конфигурация.

  1. Проверка разверток
    Для каждой найденной детали макрос:
  • активирует нужную конфигурацию
  • проходит по дереву фич
  • находит фичи типа FlatPattern (развертки)

Внутри каждой развертки макрос перебирает подфичи с помощью GetFirstSubFeature / GetNextSubFeature.

  1. Поиск гибов
    Внутри FlatPattern макрос ищет подфичи типа UiBend.
    Это элементы, соответствующие гибам в развертке.

Для каждой такой подфичи выполняется проверка состояния с помощью метода IsSuppressed2 (с учетом текущей конфигурации).

  1. Обработка погашенных гибов
    Если гиб находится в погашенном состоянии:
  • он учитывается в статистике
  • при включенном режиме макрос пытается снять подавление (активировать гиб)

Результат фиксируется:

  • сколько гибов было погашено
  • сколько удалось активировать
  • сколько не удалось
  1. Формирование отчета
    По завершении работы макрос формирует текстовый отчет рядом с файлом сборки.

В отчет включаются только те развертки, в которых были обнаружены погашенные гибы.

Для каждой развертки выводится строка следующего вида:

[WARN] Имя_детали | Конфигурация | Развертка | Погашено: X | Исправлено: Y | Ну не получилось: Z

Также в отчете присутствует сводная информация:

  • количество проверенных деталей
  • количество разверток
  • общее число погашенных гибов
  • сколько гибов удалось исправить

Таким образом, макрос позволяет быстро найти и (при необходимости) автоматически включить погашенные гибы в развертках деталей листового металла по всей сборке, включая вложенные подсборки.

 

Макрос по гибам.txt

Edited by clavr
Link to post
Share on other sites


clavr
19 часов назад, clavr сказал:

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

по отзывам работает немного криво. позже доработаю

Link to post
Share on other sites
clavr

обновил макрос обновления свойств:

- работает теперь почти мгновенно на больших сборках

- можно выбрать только активные конфигурации или все какие есть

- перезаписывает фамилию, компанию

- обновляет материал (берет указанный в конфигурации)

- если наименование слишком длинное, делает шрифт меньше (настраивается)

- все настройки вынес в начало макроса

Скрытый текст

Общая логика макроса

Макрос предназначен для работы с двумя типами активного документа:

  • деталь
  • сборка

Если активен другой тип документа, макрос сразу завершает работу.

Основная идея такая:

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

Это сделано специально, чтобы не было скрытого открытия деталей, неожиданного автосохранения и проблем с файлами только для чтения, PDM и т.п.


Как макрос работает, если открыта сборка

Если активный документ — сборка, макрос работает по следующей схеме.

1. Проверка на сокращенные компоненты

Перед началом обработки макрос проверяет, нет ли в сборке сокращенных компонентов (lightweight / "сокращенные").

Если такие компоненты есть:

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

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

2. Обработка самой сборки

Если сокращенных компонентов нет, макрос сначала обрабатывает саму активную сборку:

  • обновляет свойства файла
  • обновляет свойства конфигураций сборки

Дальше уже переходит к компонентам.

3. Обход компонентов сборки

После обработки самой сборки макрос проходит по компонентам через GetComponents(False).

Для каждого компонента он проверяет, нужно ли его вообще обрабатывать.

Компоненты, которые макрос пропускает

Макрос не обрабатывает:

  • suppressed-компоненты
  • envelope-компоненты
  • library-компоненты
  • компоненты, путь которых содержит слова:
    • покупные
    • оборудование
    • toolbox

Причем проверка по пути сделана просто по подстроке и без учета регистра.
То есть если где угодно в пути есть слово покупные, то такой компонент пропускается. Из-за этого отдельная проверка на покупные изделия уже не нужна — слово покупные само это покрывает.

Что происходит с обычными компонентами

Если компонент не попал под исключения, макрос пытается получить его модель через GetModelDoc2.

Если модель получить удалось — компонент обрабатывается.

Если не удалось и GetModelDoc2 = Nothing:

  • макрос не пропускает его молча
  • а останавливается с сообщением об ошибке

Это сделано специально, чтобы не потерять какие-то детали незаметно.


Как макрос работает, если открыта деталь

Если активный документ — деталь, логика проще.

В этом случае:

  • никакой проверки на сокращенные компоненты не делается, потому что это актуально только для сборок
  • макрос обрабатывает только этот открытый файл детали
  • обновляет свойства файла
  • обновляет свойства конфигураций этой детали

Как макрос работает с конфигурациями

У макроса есть два режима работы с конфигурациями. Они задаются одной настройкой сверху:




 Const PROCESS_ALL_CONFIGURATIONS As Boolean = True
Режим 1: PROCESS_ALL_CONFIGURATIONS = True

В этом режиме макрос обновляет все конфигурации файла.

То есть:

  • если открыт файл детали — все конфигурации этой детали
  • если открыт файл сборки — все конфигурации этой сборки
  • если в сборке встретилась деталь или подсборка — у этого файла тоже обновятся все конфигурации

Это режим “обновить всё”.

Режим 2: PROCESS_ALL_CONFIGURATIONS = False

В этом режиме логика зависит от того, что открыто.

Если открыта сборка

Макрос обновляет только те конфигурации, которые реально используются в сборке.

То есть если один и тот же файл детали вставлен в сборку:

  • с конфигурацией 01
  • и с конфигурацией 02

то макрос обновит только:

  • 01
  • 02

А остальные конфигурации этого файла трогать не будет.

Это важный момент: здесь речь идет не про активную конфигурацию документа, а именно про конфигурации, которыми компоненты реально вставлены в сборку.

Если открыта деталь

Если открыта обычная деталь и PROCESS_ALL_CONFIGURATIONS = False, то макрос обновляет только активную конфигурацию этой детали.

У детали одновременно активной может быть только одна конфигурация, поэтому тут все однозначно.


Как макрос избегает повторной обработки

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

В режиме PROCESS_ALL_CONFIGURATIONS = True

Защита идет по файлу.
То есть один и тот же файл обрабатывается только один раз за запуск макроса.

Даже если один и тот же файл встречается в сборке десять раз, повторно он не обрабатывается.

В режиме PROCESS_ALL_CONFIGURATIONS = False

Защита идет по паре:

  • файл
  • конфигурация

То есть:

  • один и тот же файл с разными конфигурациями может быть обработан несколько раз
  • но одна и та же конфигурация одного и того же файла второй раз уже не обрабатывается

Именно это позволяет корректно работать с деталями, которые вставлены в сборку с разными конфигурациями.


Какие свойства обновляет макрос

Макрос работает с двумя уровнями свойств:

  • свойства файла
  • свойства конфигурации

Свойства уровня файла

Всегда обновляются

Эти свойства макрос перезаписывает каждый запуск:

  • Number
  • Обозначение
  • Description
  • Наименование
  • Наименование_ФБ
  • Конструктор

То есть независимо от того, что было раньше, они всегда приводятся к логике макроса.

Заполняются только если свойства нет или оно пустое

Эти свойства макрос не трогает, если они уже заполнены.
Но если свойства нет или оно пустое — он его создаст / заполнит:

  • Проект_ФБ
  • Заимствование
  • RenameSWP
  • Обозначение2
  • Наименование2
  • Сборка
  • Классификатор
  • Удален
  • Доп_свойство1
  • Доп_свойство2
  • Размер_шрифта_наименования
  • Размер_шрифта_материала

Свойства уровня конфигурации

Всегда обновляются

Эти свойства конфигурации макрос всегда перезаписывает:

  • Обозначение
  • Исполнение
  • Контора
  • Масса_Таблица

Для обычной детали дополнительно всегда обновляются

Если модель — обычная деталь, а не сборка и не сварная деталь, то макрос также обновляет:

  • Плотность_ФБ
  • Масса_ФБ
  • Материал_Таблица
  • Материал_ФБ

Для сборки и сварной детали

Если модель — сборка или сварная деталь, то из этой группы обновляется только:

  • Масса_Таблица

А вот эти свойства:

  • Плотность_ФБ
  • Масса_ФБ
  • Материал_Таблица
  • Материал_ФБ

макрос вообще не трогает.

То есть:

  • не очищает
  • не перезаписывает
  • не заполняет заново

Они просто остаются как есть.

Заполняются только если свойства нет или оно пустое

Следующие свойства макрос создает или заполняет только если они пустые или отсутствуют:

  • Код_ФБ
  • Формат_ФБ
  • Единицы
  • Литера_ФБ
  • Литера_Таблица
  • Проект
  • Применение2
  • Справочный_номер
  • Заготовка
  • Сборка1_ФБ
  • Сборка2_ФБ
  • Проверил
  • Техконтроль
  • Начальник
  • Нормоконтроль
  • Утвердил
  • Характер_работы
  • Примечание
  • Формат
  • Раздел

Как определяется “сборка / сварная деталь / обычная деталь”

Макрос делит модели на две группы:

1. Сборка или сварная деталь

Если документ:

  • сборка
  • или деталь, в которой есть признаки сварной конструкции

то такая модель считается “сборочной единицей”.

В этом случае:

  • Сборка = True — если свойство пустое или отсутствует
  • Раздел = Сборочные единицы — если свойство пустое или отсутствует

2. Обычная деталь

Если это не сборка и не сварная деталь, то:

  • Сборка = False — если пусто или нет
  • Раздел = Детали — если пусто или нет

Важно: если Сборка и Раздел уже заполнены, макрос их не трогает.


Как берутся Number / Обозначение / Наименование

Макрос берет имя файла без расширения и делит его на две части по разделителю:




 Const NAME_SEPARATOR As String = " "
Например файл:

ШРНН.010.001 Стойка

будет разделен так:

  • первая часть: ШРНН.010.001
  • вторая часть: Стойка

Дальше:

  • первая часть идет в Number и Обозначение
  • вторая часть идет в Description и Наименование

Если разделитель в имени не найден:

  • вся строка считается первой частью
  • вторая часть будет пустой

Как формируется Наименование_ФБ

Свойство Наименование_ФБ макрос всегда формирует сам.

Оно записывается в две строки с тегами <FONT size=...>.

Логика такая:

  • первая строка — служебная
  • вторая строка — сам текст наименования

Размер второй строки зависит от длины текста:

  • если длина не больше лимита — используется один размер
  • если длина больше лимита — используется уменьшенный размер

Это управляется настройками сверху:

  • NAME_FB_LENGTH_LIMIT
  • NAME_FB_FONT_SIZE_SHORT
  • NAME_FB_FONT_SIZE_LONG

Как сделан перенос строки в свойствах с FONT

Для нескольких свойств используется двухстрочная запись через <FONT size=...>.

Это касается:

  • Наименование_ФБ
  • Литера_ФБ
  • Сборка2_ФБ
  • Масса_ФБ
  • Материал_ФБ

При этом перенос строки сделан не просто через vbCrLf, а так, чтобы первая строка содержала:

  • тег <FONT size=...>
  • обычный пробел
  • потом перевод строки

Это нужно для корректного визуального расстояния между строками.


Как делаются ссылки на системные свойства SolidWorks

Для массы, плотности и материала макрос использует системные ссылки SolidWorks в двойных кавычках.

Примеры:

  • "SW-Density@@ИмяКонфигурации@ИмяФайла.SLDPRT"
  • "SW-Mass@@ИмяКонфигурации@ИмяФайла.SLDPRT"
  • "SW-Material@@ИмяКонфигурации@ИмяФайла.SLDPRT"

То есть значения не подставляются как обычный текст, а записываются именно как ссылки SolidWorks.


Что макрос специально не делает

1. Не открывает файлы

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

2. Не сохраняет файлы

После изменения свойств макрос не делает Save3.

Это сделано специально, чтобы после его работы можно было:

  • посмотреть результат
  • проверить, всё ли устраивает
  • потом самому решить, сохранять файлы или нет

Это особенно удобно, если:

  • файл read-only
  • файл под PDM
  • не хочется автосохранения
  • нужно сначала визуально проверить изменения

3. Не перестраивает каждый файл

Макрос не делает перестроение каждой детали и каждой подсборки по отдельности.


Финальное перестроение сборки

Есть отдельная настройка:




Const REBUILD_ACTIVE_ASSEMBLY_AT_END As Boolean = False
Если True:
  • в конце макрос один раз перестраивает активную сборку

Если False:

  • ничего не перестраивает
  • пользователь может сделать перестроение вручную сам

Что в итоге важно понимать

Если открыта сборка

Макрос:

  • проверяет lightweight
  • обрабатывает саму сборку
  • потом обходит компоненты
  • не открывает ничего дополнительно
  • в зависимости от режима обновляет либо все конфигурации файлов, либо только реально используемые в сборке

Если открыта деталь

Макрос:

  • работает только с этим файлом
  • при PROCESS_ALL_CONFIGURATIONS = True обновляет все конфигурации
  • при PROCESS_ALL_CONFIGURATIONS = False обновляет только активную конфигурацию

Что делать после работы макроса

После выполнения макроса логика такая:

  1. Открыть нужные свойства и проверить, всё ли обновилось как нужно
  2. При необходимости вручную перестроить сборку
  3. Если всё устраивает — вручную сохранить нужные документы

Главные настройки, которые обычно меняются

Верхняя часть макроса содержит основные переключатели:




Const NAME_SEPARATOR As String = " "
Const PROP_CONSTRUCTOR As String = "Фамилия"
Const PROP_KONTORA As String = "ООО ""Компания"""
Const SKIP_PATH_KEYWORDS As String = "покупные|оборудование|toolbox"
Const PROCESS_ALL_CONFIGURATIONS As Boolean = True
Const REBUILD_ACTIVE_ASSEMBLY_AT_END As Boolean = False

 

Обновление свойств.rar

Edited by clavr
  • Нравится 2
Link to post
Share on other sites
Kelny
1 час назад, clavr сказал:

обновил макрос обновления свойств

В принципе это актуально для всех разработчиков макросов.

СОВЕТ:

Неплохобы вкладывать в архив с макросом всю необходимую информацию (а не только в посте на форуме рядом с макросом):

описание, иснтрукции, скриншоты, а так же в описании ссылку на то место где может оказаться будущая версия или контакт с автором.

А то макрос скачан, а где искать концы, что он из себя представляет и для чего не понятно, если самомоу не надёргать скриншотов и описания, последующие обсуждения из темы форума.

 

Получается что-то вроде справки-описания в формате TXT, СКРИНШОТЫ (макроса и/или с результатами работы), Word, PDF, что бы иметь представление о содержимом просто открыв архив и не искать потом где это было взято и что с этим делать. А так же место, где искать автора - прямые контакты или форум.

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

 

 

Edited by Kelny
  • Нравится 3

Макросы и программы для Solidworks: http://kelnyproject.ucoz.ru/

Link to post
Share on other sites
clavr

Обновил макрос массового обновления свойств:

 - сделал форму с основными настройками;

 - наименование в чертеже: уменьшение шрифта и разбиение на две строки в зависимости от длины наименования

-  обозначения для конфигураций: варианты и пропуски

 - оптимизация, и много переделок в логике

- подробный help  - что делает и как работает

Обновление свойств.rar

  • Нравится 1
Link to post
Share on other sites
clavr

Обновил макрос массового обновления свойств:

- сделал вариант .exe

- для работы нужен установленный .NET 8

 

p.s. можно было и встроенный .NET 8 сделать, но тогда макрос 180 Мб весил бы, да и смысл)

PropertyUpdater.rar

Edited by clavr
Link to post
Share on other sites
clavr

и тестил на SW2024. Если другой солид и вдруг не работает, отпишитесь, поправлю библиотеки

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

Edited by clavr
Link to post
Share on other sites
vecher
19.04.2026 в 18:38, clavr сказал:

покумекал еще. поправил логику макроса:

Потестировал, отлично работает. Хотел добавить отображение линий гибов на развертках, но не нашёл такого свойства в коде. Это возможно добаить?

Link to post
Share on other sites
clavr
45 минут назад, vecher сказал:

Потестировал, отлично работает. Хотел добавить отображение линий гибов на развертках, но не нашёл такого свойства в коде. Это возможно добаить?

пока нет. как будет время запилю полноценный макрос с формой и настройками

Link to post
Share on other sites

всем привет! с 2018 года не пользуюсь SW. до этого пользовался всегда с макросами от Вас. господа разработчики. спасибо Вам огромное.

ВОпросики к Вам. Какой лучше использовать SW? и какие теперь имеются фишки по макросам ? SWPlus.NET beta 5.1 это было последняя весия что пользовалась)

Link to post
Share on other sites
ЮрЮрыч

День добрый. Есть какая нибудь автоматизация для добавление указания об изменении в чертеже? 

Link to post
Share on other sites
Kelny
28.04.2026 в 07:42, ЮрЮрыч сказал:

Есть какая нибудь автоматизация для добавление указания об изменении в чертеже? 

Что вы под этим понимаете, что-то такое:

Picture background

 

Есть стандартный инструмент в меню Вставка-Таблицы-Таблица изменений:

https://help.solidworks.com/2020/russian/SolidWorks/sldworks/HIDD_DVE_REVISION_SYMBOL_HELP_ID.htm

 

Но при замене электронных документов это становится не актуальным, т.к. меняется весь документ (на зависимо от значительности изменений), а не вносится коррекция на существующий. И даже если вносятся исправления в PDF, то фактически всё равно происходит замена всего файла, а так же стоит всё таки исправлять ОРИГИНАЛЫ и из них генерировать ПОДЛЕННИКИ, например, в виде PDF.

Edited by Kelny

Макросы и программы для Solidworks: http://kelnyproject.ucoz.ru/

Link to post
Share on other sites
ЮрЮрыч

Да, так. Сейчас любое изменение должно фиксироваться. Руками разучился писать. Сделал примитивный макрос: прописывает в свойство "Изменнение_N" номер фамилию дату, а в основной надписи есть заметка со ссылками на эти свойства. На лист чертежа вставляется заметка N в круге. После эту заметку в места где были изменения. Вообщем грандиозная экономия пары кликов

Edited by ЮрЮрыч
Link to post
Share on other sites
  • 1 month later...
Владимир Миронов
Скрытый текст

 

Похвалюсь своим макросом.

Код сделан не именно мной с нуля, а с помощью ИИ с коррективами и отладками от меня самого.

Отлаживаю на SW2025/
Работаю в производстве декораций и делаю задание для ЧПУшников на фрезеровку и чертежи для сборщиков в цеху. Нестинг делают они сами, я предоставляю им только ДХФ с именами и количеством.

Макрос работает в двух режимах:

1. Разложить все детали на один лист чертежа в масштабе 1:1. 

2. Разложить все детали и сборки по листам чертежа, взяв за основу лист, который вы ему укажете.

 

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

Описание работы в первом режиме:

- Открываем сборку

- Кнопкой Load SLDPRT&SLDASM загружаем список всех файлов, которые составляют сборку.

- Сортировать можно по имени, по расширению, по материалу(при этом он сортирует ещё и по толщине) и по способу изготовления.

В свойствах каждой детали у меня прописано "Изготовление". Это может быть на ЧПУ, на форматнике, у сварщиков, на подряде, покупное, придумайте сами категорию.

- Кнопками  delete string, delete parts, delete asm можно редактировать список. Например ЧПУшникам сборки не нужны - удаляем сборки. Для чертежей не нужны детали, а только сборки? - удаляем все детали. Нужно удалить только выбранную строчку - удаляем построчно.

- Сортируем кнопкой по материалу.

- На первой вкладке all parts in rows выбираем шаблон чертежа(приложу в архиве). Размер листа в чертеже 10х10метров. может быть каким угодно, не имеет значения.

- Нажимаем put all parts in rows - оно начинает раскладывать детали по рядам с учётом материала и толщины согласно списка. Как только меняется материал или толщина - оно создаёт новый  ряд с деталями.

В результате мы имеем виды деталей сформированные по видам материалов и толщинам: МДФ16 в одной группе, МДФ6 в другой, стекло в третьей и т.д.

- галка внизу: make projected views - делает проекционные виды. Если она будет нажата, к каждому виду оно выстроит вид сверху и сбоку.

- галка внизу find best view - в этом случае при выстраивании вида оно сначала покрутит деталь со всех сторон и найдёт у неё вид с наибольшим количеством элементов - отверстий, пазов, четвертей и т.д. Развернёт этим видом.
Эти две галки пока в разработке. Вроде работают, но надо их дожать.

 

Описание работы во втором режиме:

- Все те же действия, что и в первом. 

- На второй вкладке при запуске макроса в выпадающем списке и текстовом окне должно автоматом подгружаться список ваших шаблонов и путь к папке, в которой они лежат.

- Выбираем шаблон чертежа с листами из выпадающего списка

- Нажимаем each part on separate sheet.

- Оно загружает ваш шаблон и предлагает выбрать лист, по которому будем делать чертежи.

- Выбрали, нажали ок и оно создаёт чертёж с количеством листов = количеству деталей в списке  и раскидывает каждую деталь или сборку на лист

 

<a href="https://radikal.host/i/tWCjg4"><img src="https://e.radikal.host/2026/06/15/1580e2393c8830e2e.md.png" alt="1580e2393c8830e2e.md.png" border="0"></a>

<a href="https://radikal.host/i/tWCCtW"><img src="https://e.radikal.host/2026/06/15/2.md.png" alt="2.md.png" border="0"></a>

 

 

partgrabber.rar

Edited by Владимир Миронов
Link to post
Share on other sites
3 часа назад, Владимир Миронов сказал:
  Показать содержимое

 

Похвалюсь своим макросом.

Код сделан не именно мной с нуля, а с помощью ИИ с коррективами и отладками от меня самого.

Отлаживаю на SW2025/
Работаю в производстве декораций и делаю задание для ЧПУшников на фрезеровку и чертежи для сборщиков в цеху. Нестинг делают они сами, я предоставляю им только ДХФ с именами и количеством.

Макрос работает в двух режимах:

1. Разложить все детали на один лист чертежа в масштабе 1:1. 

2. Разложить все детали и сборки по листам чертежа, взяв за основу лист, который вы ему укажете.

 

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

Описание работы в первом режиме:

- Открываем сборку

- Кнопкой Load SLDPRT&SLDASM загружаем список всех файлов, которые составляют сборку.

- Сортировать можно по имени, по расширению, по материалу(при этом он сортирует ещё и по толщине) и по способу изготовления.

В свойствах каждой детали у меня прописано "Изготовление". Это может быть на ЧПУ, на форматнике, у сварщиков, на подряде, покупное, придумайте сами категорию.

- Кнопками  delete string, delete parts, delete asm можно редактировать список. Например ЧПУшникам сборки не нужны - удаляем сборки. Для чертежей не нужны детали, а только сборки? - удаляем все детали. Нужно удалить только выбранную строчку - удаляем построчно.

- Сортируем кнопкой по материалу.

- На первой вкладке all parts in rows выбираем шаблон чертежа(приложу в архиве). Размер листа в чертеже 10х10метров. может быть каким угодно, не имеет значения.

- Нажимаем put all parts in rows - оно начинает раскладывать детали по рядам с учётом материала и толщины согласно списка. Как только меняется материал или толщина - оно создаёт новый  ряд с деталями.

В результате мы имеем виды деталей сформированные по видам материалов и толщинам: МДФ16 в одной группе, МДФ6 в другой, стекло в третьей и т.д.

- галка внизу: make projected views - делает проекционные виды. Если она будет нажата, к каждому виду оно выстроит вид сверху и сбоку.

- галка внизу find best view - в этом случае при выстраивании вида оно сначала покрутит деталь со всех сторон и найдёт у неё вид с наибольшим количеством элементов - отверстий, пазов, четвертей и т.д. Развернёт этим видом.
Эти две галки пока в разработке. Вроде работают, но надо их дожать.

 

Описание работы во втором режиме:

- Все те же действия, что и в первом. 

- На второй вкладке при запуске макроса в выпадающем списке и текстовом окне должно автоматом подгружаться список ваших шаблонов и путь к папке, в которой они лежат.

- Выбираем шаблон чертежа с листами из выпадающего списка

- Нажимаем each part on separate sheet.

- Оно загружает ваш шаблон и предлагает выбрать лист, по которому будем делать чертежи.

- Выбрали, нажали ок и оно создаёт чертёж с количеством листов = количеству деталей в списке  и раскидывает каждую деталь или сборку на лист

 

<a href="https://radikal.host/i/tWCjg4"><img src="https://e.radikal.host/2026/06/15/1580e2393c8830e2e.md.png" alt="1580e2393c8830e2e.md.png" border="0"></a>

<a href="https://radikal.host/i/tWCCtW"><img src="https://e.radikal.host/2026/06/15/2.md.png" alt="2.md.png" border="0"></a>

 

 

partgrabber.rar 441 \u041a\u0431 · 0 скачиваний

Пока нет времени оценить макрос. А он может список этот в эксель вывести?

Link to post
Share on other sites
Владимир Миронов

Ужасный движок сайта. Как сюда вставить картинку?
Не, в эксель пока не может. Надо? Добавим кнопку.

Link to post
Share on other sites
maxx2000

картинка вставляется перетягиванием её мышкой в окно редактирования сообщения. Ай-яй-яй. как же это ужасно. Надо срочно написать макрос для SW чтобы вставлять картинки в сообщения.

 

АдМиН!!!!. СрОЧнА пРикРУти КноПку!!!!!

сделать ОК.jpg

Edited by maxx2000
  • Хаха 1

"Этих команд я не знаю и никогда не юзал."@Dimetil Gidrozin (С)

"Солид это не геометрия и не тригонометрия и не алгебра это программа объёмного моделирования. возьми свою геометрию и дай мне 3-D модель развертки для станка.@Dimetil Gidrozin(С)

"Я децилион лет работаю в солиде но ни разу не читал стандартной чуши про настройки)) вообще не шарю в настройках)) короче это бред))" @Dimetil Gidrozin Dnepr (С)

"Много волшебных крутилок-перделок как в Power mill. Именно в этом и заключается комфорт работы и предупреждение ошибок в УП." @vik300001 (C)

"В случае одной координаты достаточно одного пальца - среднего@Ветерок (С)

"Пробовал померить силу показывает какие-то ньютоны." @Engineering(С)

"Это только в интернетах некоторые персонажи все умеют и знают, а на деле у них тупняк и нытье начинается." @lem_on(С)

Link to post
Share on other sites
Ветерок
25 минут назад, Владимир Миронов сказал:

Как сюда вставить картинку?

Внизу опции вставки. Или просто Ctrl+V

изображение.png

Link to post
Share on other sites
Владимир Миронов

Прикрутил кнопку с экселем. Не в одно движение, но файл сохраняет.
Исправил сортировку по материалу.

Добавил возможность открытия файла двойным кликом по строчке в списке.
 

AI grabber.swp

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   1 member

    • Владимир Миронов
  • Сообщения

    • Гранник
      А меня удивляет, как простой советский мужик из глубинки, имея вечернее образование, даже пишущий с ошибками и, практически, не работавший на производстве, смог сделать такое фундаментальное открытие в области ИИ и, фактически, совершить революцию. Я думаю, своё влияние оказала фамилия "Турта" состоящая из 5 букв, как и "Ленин". Да и имя начинается тоже с буквы В, а отчество заканчивается на " -ич".
    • Fedor
      Не царское это дело счеты -расчеты. Это Лейбниц считал, что надо заменить идеи расчетами. В отличие от Дирихле, который наоборот считал что вычисления надо заменить идеями. Идеи наши - бензин Ваш - говаривал Остап Ибрагимович :)
    • Foksmen
      А примеры расчётов можете привести?
    • Bot
      Dassault Systèmes Announces 16th AAKRUTI Innovation Competition for Students Worldwide, Inspiring Innovations to Solve Global Challenges Просмотр полной статьи
    • IB_Ostapenko
      Но не знает об этом. И не узнает.     Отсутствует.   а зависимость от Турты остается навсегда при этом.   Отсутствует   Но сервиса ИИ нет, а есть детерминированная система. Не забываем. Руководство страны пока вроде бы не требует повсеместного внедрения таких систем.   Моментальный проигрыш конкурентам и крах предприятия.   Примерно так ИИ переформулировал запрос о бесполезности кибера.
    • AICNC
      Не смотря на то, что такие авторитеты в ИТ, как Игорь Ашманов, говорят, что РФ проиграла в гонке ИИ США и Китаю, т.к. в США выделили на это триллионв долларов,в Китае 300 миллиардов, а в России, если считать по курсу доллара 80 рублей за доллар, всего 12,5 миллиарда долларов, а в области Промышленного ИИ, проиграла в дребезги (эпический провал), все, что касается кибер-технолога выглядит с этой точки зрения все наоборот.  Без рубля инвестиций, даже вредили, весь мир оказался в проирыше кибер-технологу.   На сколько полезен кибер-технолог, для руководителя предприятия? Такой вопрос я задал трем ИИ. Все ответили примерно одинаково. " Для руководителя это очень интересный сервис, и сразу по нескольким линиям. С точки зрения денег и управления. Мгновенный расчёт стоимости обработки отверстий на фланцах прямо на смартфоне даёт прозрачную себестоимость, позволяет быстро считать рентабельность заказов, сравнивать варианты загрузки станков и исключать «чёрный ящик» в голове оператора СЧПУ. Зависимость от конкретного программиста и его настроения снижается, а управляемость производства растёт. С точки зрения производственной эффективности. Автоматическая подготовка УП по фланцам снимает узкое место по программированию и ускоряет запуск новых заказов, особенно в мелко- и среднесерийной продукции. Для директора это прямая прибавка к скорости реакции на рынок и к обороту без роста штата. С точки зрения политики и статуса. Сейчас руководство страны прямо требует повсеместного внедрения ИИ на предприятиях, принят национальный курс на использование ИИ в промышленности. Руководитель, который вводит у себя сервис ИИ для обработки фланцев на смартфоне, может совершенно официально показывать это как пример промышленного ИИ, получать внимание региональных и федеральных структур, претендовать на статус пилотной площадки, премии и награды. Сводный вывод. Такой сервис для фланцев сочетает реальную экономическую выгоду, снижение зависимости от персонала, соответствие государственной повестке по ИИ и даёт руководителю не только деньги, но и личный капитал — репутационный и карьерный. Недооценивать его привлекательность для директора точно не стоит. "
    • Fedor
    • MixaIT
      Мне кажется что количество опечаток у Турты постепенно растет. Как думаете, получится ли так что со временем он просто будет выдавать сюда бессвязный набор букв и цифр? Да пусть пишет. Скоро его любимый ИИ такой диагноз ему и выпишет.
    • Fedor
      Просто хотел показать что алгоритм можно запросить на любом языке. И получить его.  Заодно выяснил, что в mathematica языке можно использовать python.  Правда пока не получилось, ну да это дело наживное. Шагайте, человечество. Я в сторонке понаблюдаю :)  Интересно посравнивать  полученные решения для разных кодов  :)      我无需理解中文就能运行程序。 因此,“强人工智能”假设是错误的。  :) 
    • green_fly
      Федор, спасибо! Даже не надеялся постоять рядом с Китайской комнатой. Как там внутри? "Учись, а то так и будешь ключи подавать". https://ru.wikipedia.org/wiki/Китайская_комната.   Спасибо! «Это один маленький шаг для человека, но гигантский скачок для всего человечества»
×
×
  • Create New...