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

Как удалить компонент из сборки, используя Api?


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

Как удалить компонент из сборки, используя API?

Я использую CimSuiteAssy::DeleteComponent в CimatronE 6

Но там есть входной параметр типа AssInstance. Как мне получить его для сборки или детали.

Пожалуйста покажите пример!!!!!!!!!

1. Для детали

Единственный метод, который возвращает iAssInstance - IAddModel.AddedInstanceInt. Но он используется для процедур.

Кстати, а что это за процедуры?

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


Как удалить компонент из сборки, используя API?

Я использую CimSuiteAssy::DeleteComponent в CimatronE 6

Но там есть входной параметр типа AssInstance. Как мне получить его для сборки или детали.

Пожалуйста покажите пример!!!!!!!!!

1. Для детали

Единственный метод, который возвращает iAssInstance - IAddModel.AddedInstanceInt. Но он используется для процедур.

Кстати,  а что это за процедуры?

<{POST_SNAPBACK}>

Все очень просто:

Dim ASB As AssemblyModel

Dim ASB_MAS As Variant

Dim ASB_M As IAssInstance ' Variant

Dim mASB As IModel

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

If gSuite.dM.GetActvDocType = suAssembly Then MsgBox "Открыта сборка" + gSuite.dM.GetActvDocTitle

'проверяем что активно в данный момент в открытом документе(сборка/подсборка или модель)

If gSuite.dM.GetActiveModel.Type = cmAssembly Then

'если активна сборка/подсборка то нас это устраивает получаем AssemblyModel

Set ASB = gSuite.dM.GetActiveModel

Else

'если активна деталь то нас это неустраивает

MsgBox "Активна деталь. Активизируйте сборку и повторите попытку."

Exit Sub

End If

получаем массив содержащий список состава сборки

ASB_MAS = ASB.GetInstances()

'далее работаем с этим массивом как хотим

'методом перебора выбираем Вам необходимый элемент

'элемент массива имеет тип IAssInstance

Set ASB_M = ASB_MAS(0)

'и соответственно мы можем получить всю доступную информацию о сб.единице

'ASB_M.Model.Title

' ASB_M.AssParentInstance.Model.Title

'можем наверно и удалить... :clap_1:

А что в итоге хотите получить - то :g:

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

Все очень просто:

Dim ASB As AssemblyModel

Dim ASB_MAS As Variant

Dim ASB_M As IAssInstance ' Variant

Dim mASB As IModel

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

If gSuite.dM.GetActvDocType = suAssembly Then MsgBox "Открыта сборка" + gSuite.dM.GetActvDocTitle

'проверяем что активно в данный момент в открытом документе(сборка/подсборка или модель)

А что в итоге хотите получить - то :g:

<{POST_SNAPBACK}>

Спасибо. Сейчас буду пробывать. Кстати, я вот только сейчас увидел, что типу данных AssemblyModel можно присваивать Model.

Set ASB = gSuite.dM.GetActiveModel

Как то непонятно. Кстати, а не подскажешь какими ресурсами ты пользовался при изучении Cimatron API?

Кинь ссылочки.

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

Спасибо. Сейчас буду пробывать. Кстати, я вот только сейчас увидел, что типу данных AssemblyModel можно присваивать  Model.

Set ASB = gSuite.dM.GetActiveModel

Как то непонятно. Кстати, а не подскажешь какими ресурсами ты пользовался при изучении Cimatron API?

Кинь ссылочки.

<{POST_SNAPBACK}>

Пользуюсь только хелпом. Судя по всему другой информации Cimatron не дает :sad:
Ссылка на сообщение
Поделиться на других сайтах

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

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

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

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

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

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

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

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

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

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




×
×
  • Создать...