Можно ли сделать макрос для работы с БЧ из Библиотеки металлоконструкций?

Автор IgorT, 06.12.22, 11:43:33

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Михаил88

а можете такую детальку закинуть сюда, чтобы открывалась в к18


Вират Лакх

Цитата: IgorT от 07.12.22, 18:04:01Нет. Не изменится.
Мы-то знаем ответ. Я хотел, чтобы p3452 ответил на этот вопрос.
Цитата: IgorT от 07.12.22, 18:04:01Но надо помнить, что макрос не обрабатывает локальные детали.
Зачем dimak222 исключил локальные детали?
Про особенность. Если количество операций больше 1, то не БЧ.
+ Благодарностей: 1

p3452

Цитата: Вират Лакх от 07.12.22, 17:31:13А если изменить длину профиля, то наименование тоже изменится?
Переобуваться в воздухе, то же искусство

Вират Лакх

08.12.22, 06:17:25 #44 Последнее редактирование: 08.12.22, 06:32:49 от Вират Лакх Причина: ModelObjectType
Цитата: Михаил88 от 07.12.22, 16:31:58Свойство есть.
Проверил, в 16 нет.
На тему, как ещё можно отделить обычную деталь от МК и выявить доп. построения.
iModelContainer = api7.IModelContainer(iPart7)
for obj in iModelContainer.Objects(0):
if obj.Name:
print(obj.Name, obj.Type, obj.ModelObjectType)
else:
break
iModelContainer.Objects(0), похоже, в основном формируется с конца:
ЦитироватьВырезать элемент выдавливания:1 11010 26
Уголок 20x4 ГОСТ 8509-93:1 11211 584
Плоскость XY 11197 1
Плоскость ZX 11197 2
Плоскость ZY 11197 3
Ось X 11188 71
Ось Y 11188 72
Ось Z 11188 73
Начало координат 11001 4
Если есть объект с типом 11211 (ksObjectUserObject3D Пользовательский объект 3D) или 584 (o3d_UserObjectOperation Пользова­тельская многотель­ная опера­ция), то МК.
Если есть что-то не из (11211, 11197, 11188, 11001) или (584, 1, 2, 3, 4, 71, 72, 73), то модифицированная МК или обычная.
+ Благодарностей: 1

Олеся_Орен

Цитата: IgorT от 07.12.22, 15:12:45эскизов нет
Может быть один эскиз.
Цитата: p3452 от 07.12.22, 15:44:45Локальными деталями
Это уже ближе к сути и практике применения деталей бч.


IgorT

Цитата: Олеся_Орен от 08.12.22, 06:51:41....Это уже ближе к сути и практике применения деталей бч.
Не понял. Это чем оно ближе?
Тему читали? Поясню, тема про то, как в Наименование детали прописать параметры детали БЧ из МК.

dimak222

Цитата: IgorT от 07.12.22, 18:04:01Но надо помнить, что макрос не обрабатывает локальные детали. 
Это легко поменять, добавлю как опцию. (никто не говорил что МК делают локальными=))

Цитата: IgorT от 07.12.22, 18:04:01Если мы нашу деталь делаем в МК и применяем к ней разделку
Как выглядит эта дет.? Получается, у неё тело называется не "Тело n".

Цитата: Вират Лакх от 08.12.22, 06:17:25Если есть объект с типом 11211 (ksObjectUserObject3D Пользовательский объект 3D) или 584 (o3d_UserObjectOperation Пользова­тельская многотель­ная опера­ция), то МК.
Если есть что-то не из (11211, 11197, 11188, 11001) или (584, 1, 2, 3, 4, 71, 72, 73), то модифицированная МК или обычная.
Надо попробовать=)

IgorT

Цитата: dimak222 от 08.12.22, 08:34:19...
Как выглядит эта дет.? Получается, у неё тело называется не "Тело n".
...
Какой у Вас Компас?

dimak222

Цитата: IgorT от 07.12.22, 18:58:50Можно только в К19 и К20 :(.
Написал для v21 приложение (т.к. SaveRaster с ним уже не работает) по переводу открытых файлов в старые версии, но оно ещё до конца не доделано (ещё хочу добавить преобразование файлов из папки). Если нужно, создам новую тему этого приложения.

Цитата: IgorT от 08.12.22, 08:39:59Какой у Вас Компас?
Кидайте в v21


dimak222

Цитата: IgorT от 08.12.22, 09:37:36Вот деталь МК с разделкой.
Понял, в этом случае нужно смотреть по операциям.

Цитата: Вират Лакх от 08.12.22, 06:17:25Если есть объект с типом 11211 (ksObjectUserObject3D Пользовательский объект 3D) или 584 (o3d_UserObjectOperation Пользова­тельская многотель­ная опера­ция), то МК.
Если есть что-то не из (11211, 11197, 11188, 11001) или (584, 1, 2, 3, 4, 71, 72, 73), то модифицированная МК или обычная.
Вот эту логику продумать...

dimak222

"Изменение наименования по имени тела v.0.3.0.0"

Что нового:
1. Добавлена опция обработки локальных дет.
2. Добавлен перечень признаков что это не МК "No_MK".
3. Если в дет. вставлено не один МК элемент (ещё один элемент МК, специальная разделка и т.д.) - считается это не МК дет. (не переименовывает).

P.S. В опцию "No_MK" не добавлял эскиз/плоскости (при необходимости можно поменять), т.к. эскиз/плоскости можно создать (для наглядности точек присоединения/наметки положения отв. в дальнейших СБ), но не делать другие операции, и дет. останется МК.
+ Благодарностей: 1

IgorT

Супер! Первое применение не выявило недостатков! Замечательно!

А можно ещё спросить?
Для деталей БЧ типа пластина МК пишет вот так:
2022-12-09_13-05-53.png
Может и так годится, но желательно "S = ..." убрать.
Ещё не плохо бы, если можно, что бы прописывались "Масса" и "БЧ" в СП для деталей БЧ.
Тогда вообще была бы сказка.
Прикол в том, что  масса вчера прописывалась, а сегодня не хочет.

IgorT

По ходу выяснилось ещё пожелание.
Если деталь была изначально сделана БЧ, но потом решили её разделать, желательно что бы в Наименовании была скорректирована надпись и убрана часть, отвечающая за БЧ. Пока это нужно делать руками. Можно макросу работу поручить?

dimak222

Цитата: IgorT от 09.12.22, 13:10:38Может и так годится, но желательно "S = ..." убрать.
Везде "S = .+" убирать? Или только в пластине? (могу сделать опцию, убирать найденный текст (пример: "S = .+", где "S = " - текст; "." - любой символ; "+" -  одно и более совпадений, см. re) или "S = \d+ мм" - что бы точно удаляло то что надо а не всё).

Цитата: IgorT от 09.12.22, 13:10:38Ещё не плохо бы, если можно, что бы прописывались "Масса" и "БЧ" в СП для деталей БЧ.
Надо поискать как записать св-ва в дет., не помню был ли у меня подобный пример....

Цитата: IgorT от 09.12.22, 13:48:05Наименовании была скорректирована надпись и убрана часть, отвечающая за БЧ
А как узнать новое название? Или будет просто Швеллер? Да и + обозначение нужно вписать. Я по имени файла вписываю Обозн. Наим. и Код документа.

IgorT

Цитата: dimak222 от 09.12.22, 14:09:42Везде "S = .+" убирать? Или только в пластине? (могу сделать опцию, убирать найденный текст (пример: "S = .+", где "S = " - текст; "." - любой символ; "+" -  одно и более совпадений, см. re) или "S = \d+ мм" - что бы точно удаляло то что надо а не всё).
Что-то навскидку не упомню где кроме пластины используется "S" в БЧ...

Цитата: dimak222 от 09.12.22, 14:09:42Надо поискать как записать св-ва в дет., не помню был ли у меня подобный пример....
У Вират Лакх может быть спросить?

Цитата: dimak222 от 09.12.22, 14:09:42А как узнать новое название? Или будет просто Швеллер? Да и + обозначение нужно вписать. Я по имени файла вписываю Обозн. Наим. и Код документа.
Обозначение надо оставить как есть.
Насчет кода... У нас его почему-то не используют.
В Наименовании не обязательно "Швеллер". Тот текст оставить, что там был до первой "@" . ИМХО.

Михаил88

Цитата: dimak222 от 09.12.22, 14:09:42Надо поискать как записать св-ва в дет., не помню был ли у меня подобный пример....

на форуме много примеров есть

dimak222

Решил вопрос с форматкой и массой для дет., но для сборки, не могу поменять св-ва именно дет. (по варианту без открытия дет.).

iPropertyMng.GetProperty(iKompasDocument, "Форматы листов документа") # интерфейс свойстваИз-за "iKompasDocument" берутся св-ва компонента в сборке, а не самой дет.. Как сделать указатель на документ (Рис. 1). И возможно ли вообще менять св-ва дет. без её открытия или без "Редактировать на месте"?