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

ADN Club => Inventor API => Тема начата: Shemetova от 24-04-2017, 16:27:04

Название: Болтовое соединение
Отправлено: Shemetova от 24-04-2017, 16:27:04
Как определить,что сборка является болтовым соединением?
Название: Re: Болтовое соединение
Отправлено: mikazakov от 24-04-2017, 20:44:57
В общем выделите в браузере болтовое соединение и протрассируйте макрос:
Код - Visual Basic [Выбрать]
  1. Sub param_units()
  2.    Dim AD As AssemblyDocument
  3.    Set AD = ThisApplication.ActiveDocument
  4.    
  5.    Dim bolted As ComponentOccurrence: Set bolted = AD.SelectSet(1)
  6.    
  7.    Debug.Print (bolted.DisabledActionTypes)
  8.    Debug.Print (bolted.AttributeSets.Count)
  9.    
  10. End Sub
  11.  

просмотрите в работе состояние объекта bolted и подберите за какое свойство удобнее цепляться при анализе.
дополнительные подробные данные записаны в атрибутах bolted.AttributeSets
а ограничение манипуляции в сборке пользователем в свойстве bolted.DisabledActionTypes
Название: Re: Болтовое соединение
Отправлено: Shemetova от 26-04-2017, 13:00:59
У болтовых соединений обнаруживается AttributeSets с именем "FDesign" и DisabledActionTypes = "Reorder action type".
Можно утверждать, что эти две характеристики однозначно определяют болтовое соединение?
Название: Re: Болтовое соединение
Отправлено: mikazakov от 26-04-2017, 13:12:03
AttributeSets с именем "FDesign"
AttributeSets это коллекция, внутри есть еще объекты (сами атрибуты). Стоит по изучать их содержание для анализа.
Название: Re: Болтовое соединение
Отправлено: Shemetova от 26-04-2017, 13:32:40
Атрибуты коллекции FDesign следующие:

 Data
 SolverOpt
 Req
 CalcOpt

все имеют тип 50352640 - Attribute Object
по именам - затрудняюсь определить их назначение
Название: Re: Болтовое соединение
Отправлено: mikazakov от 26-04-2017, 20:22:12
Ну разверните узлы при пошаговом выполнении макроса.
Там будет что проанализировать.
Для примера атрибут Data имеет строковое значение в которую завернут xml-документ, а в нем очень много, что может хранится (см. скрин)

(https://s11.postimg.org/g9ycb6qrz/image.png) (https://postimg.org/image/g9ycb6qrz/)

остальные тоже содержат данные, но там инфа скуднее.
Ну как то так, это вся информация о болтовом соединении.

P.S. Нужно признаться, что VBA не самый удобный инструмент для работы с xml.
Название: Re: Болтовое соединение
Отправлено: mikazakov от 26-04-2017, 20:25:23
Да и в хэлпе есть обзор по работе с атрибутами

(https://s11.postimg.org/rrpel0o8f/image.png) (https://postimg.org/image/rrpel0o8f/)
Название: Re: Болтовое соединение
Отправлено: Shemetova от 27-04-2017, 09:37:46
Спасибо за предоставленную информацию.