Сообщество программистов Autodesk в СНГ

ADN Club => Inventor API => Тема начата: R.I.Chernov от 12-01-2015, 16:58:25

Название: Производный компонент (наследование)
Отправлено: R.I.Chernov от 12-01-2015, 16:58:25
Доброго времени суток, уважаемые форумчане! Снова ищу у Вас помощи!
У меня есть деталь "A", которая построена на основе детали "B" с помощью команды "производный компонент (наследование)". Деталь "A" помещена в сборку. Могу ли я обратиться из этой сборки к детали "B"?
П.С. Зная свое нередкое кривословие, прикрепляю файл пример :)
Название: Re: Производный компонент (наследование)
Отправлено: Владимир Ананьев от 12-01-2015, 19:01:55
Вот рабочий пример на VBA:

Код - Visual Basic [Выбрать]
  1. Sub GetMasterPart()
  2.  
  3.     Dim oAsmDoc As AssemblyDocument
  4.     Set oAsmDoc = ThisApplication.ActiveDocument
  5.     Dim oAsmDef As AssemblyComponentDefinition
  6.     Set oAsmDef = oAsmDoc.ComponentDefinition
  7.     'ссылка по имени на конкретный компонент (деталь А)
  8.    Dim oOcc As ComponentOccurrence
  9.     Set oOcc = oAsmDef.Occurrences.ItemByName("Деталь А")
  10.    
  11.     ' Через производный компонент в компоненте А
  12.    ' найдем ссылку на документ детали B
  13.    Dim oRefComps As ReferenceComponents
  14.     Set oRefComps = oOcc.Definition.ReferenceComponents
  15.    
  16.     'здесь полагаем, что искомый производный компонент
  17.    'является первым у детали А
  18.    Dim oDerPartComp As DerivedPartComponent
  19.     Set oDerPartComp = oRefComps.DerivedPartComponents.Item(1)
  20.    
  21.     ' дескриптор документа в производном компоненте
  22.    ' дает ссылку на документ мастер-детали B
  23.    Dim oMasterDocDescriptor As DocumentDescriptor
  24.     Set oMasterDocDescriptor = oDerPartComp.ReferencedDocumentDescriptor
  25.     Dim oMasterDoc As PartDocument
  26.     Set oMasterDoc = oMasterDocDescriptor.ReferencedDocument
  27.    
  28.     Debug.Print oMasterDoc.FullFileName
  29.    
  30.     Beep
  31. End Sub

С Новым Годом!  :)
Название: Re: Производный компонент (наследование)
Отправлено: R.I.Chernov от 13-01-2015, 11:54:00
Спасибо, Владимир Николаевич! Это именно то, что нужно! Вас также с новым годом... старым новым годом, рождеством, ну и всеми прочими наступившими праздниками! :)