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

ADN Club => Inventor API => Тема начата: anton.gorschnev от 16-04-2020, 07:58:38

Название: Потеря атрибутов модели в чертеже
Отправлено: anton.gorschnev от 16-04-2020, 07:58:38
Добрый день, столкнулся с неприятной проблемой возможно кто то уже нашел решение прошу поделиться.
В модели на элемент (или поверхность) назначен атрибут при создании чертежа я ищу кривые отображаемые на
виде по этому атрибуту но не всегда нахожу хотя на виде чертежа эти кривые явно присутствуют. В моем случае
это выглядит так: есть фланец у которого в зависимости от размеров отверстия под крепеж могут попадать на фаску
уплотнительного выступа или нет. Если отверстия попадают на фаску то программа выдает что кривые на виде с указанным
атрибутом модели отсутствуют причем это относиться только к рассеченному виду  (если вид не рассечен кривые находятся ).

(https://i.ibb.co/KW2B2QM/image.jpg) (https://ibb.co/SBtHt1h)

Код - Visual Basic [Выбрать]
  1. Sub count1()
  2. Dim oDrDoc As DrawingDocument
  3. Set oDrDoc = ThisApplication.ActiveDocument
  4. Dim oSheet As Sheet
  5. Set oSheet = oDrDoc.ActiveSheet
  6. Dim oView As DrawingView
  7. Set oView = oSheet.DrawingViews.Item(2)
  8. Dim oPartDoc As PartDocument
  9. Set oPartDoc = oView.ReferencedDocumentDescriptor.ReferencedDocument
  10. Debug.Print (oPartDoc.AttributeManager.FindObjects("Flange", "Uplotnitel", "EndB").Count)
  11. Debug.Print (oView.DrawingCurves(oPartDoc.AttributeManager.FindObjects("Flange", "Uplotnitel", "EndB").Item(1)).Count)
  12.  
  13.  
  14. Dim oDCurve1 As DrawingCurve
  15. Dim oRed As Color
  16. Set oRed = ThisApplication.TransientObjects.CreateColor(255, 0, 0)
  17. For i = 1 To oView.DrawingCurves(oPartDoc.AttributeManager.FindObjects("Flange", "Uplotnitel", "EndB").Item(1)).Count
  18. Set oDCurve1 = oView.DrawingCurves(oPartDoc.AttributeManager.FindObjects("Flange", "Uplotnitel", "EndB").Item(1)).Item(i)
  19.  oDCurve1.Color = oRed
  20. Next
  21.  
  22. End Sub
  23.  

ссылка на модель
https://yadi.sk/d/ASTEx6x0Qm9Khw  (https://yadi.sk/d/ASTEx6x0Qm9Khw)
Название: Re: Потеря атрибутов модели в чертеже
Отправлено: mikazakov от 16-04-2020, 13:57:11
Переправил в девхэлп посмотрим что скажут
Название: Re: Потеря атрибутов модели в чертеже
Отправлено: mikazakov от 20-04-2020, 20:42:15
Ответили уклончиво
It is neither product limitation nor bug. Rather, it is a "As Design" behavior.
В общем перебирайте сегменты на чертеже сечения в цикле. И смотрите, что их порождает
Название: Re: Потеря атрибутов модели в чертеже
Отправлено: anton.gorschnev от 22-04-2020, 08:54:59
Спасибо. Понятно что прямая фильтрация тупит.
Чем больше залазию в AP Inv тем больше мне кажется что его
написали еще те кулхацкеры!? (хотя сам я далеко не программист)
Название: Re: Потеря атрибутов модели в чертеже
Отправлено: mikazakov от 22-04-2020, 09:21:55
К чему то доступ сделан, к чему то нет, в чертежах с АПИ ситуация в принципе хуже. Подразумеваю, что АПИ не самое приоритетное направление.