Добавление эскиза на выбранную плоскость детали

Автор Тема: Добавление эскиза на выбранную плоскость детали  (Прочитано 3096 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн ElfilagasАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 117
  • Карма: 4
Добрый день, есть код, который добавляет эскиз на деталь при выборе необходимой плоскости детали из пространства сборки:
Код - vb.net [Выбрать]
  1.            
  2. Dim oMainFace As FaceProxy = InvApp.CommandManager.Pick(SelectionFilterEnum.kPartFaceFilter, "Выберите плоскость")
  3. If IsNothing(oMainFace) Then Exit Sub
  4.  
  5. Dim oPartOcc As ComponentOccurrence = oMainFace.ContainingOccurrence
  6. Dim oPartCompDef As PartComponentDefinition = oPartOcc.Definition
  7.  
  8. Dim oMainSketch As PlanarSketch = Nothing
  9.  
  10. Dim oMainNativeFace As Face = oMainFace.GetSourceFace(True) 'Возвращает нативную плоскость из измененной в сборке, если это нативная плоскость, то возвращает Nothing
  11.  
  12. If IsNothing(oMainNativeFace) Then
  13.        oMainSketch = oPartCompDef.Sketches.Add(oMainFace.NativeObject, False)
  14. Else
  15.        oMainSketch = oPartCompDef.Sketches.Add(oMainNativeFace, False)
  16. End If
Но эскиз не добавляется, если выбрана деталь у которой есть исполнения. Подскажите в чем причина?

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 752
  • Карма: 195
  • Skype: mikazakov@mail.ru
Дак и пользовательский интерфейс не дает создавать эскиз на исполнениях параметрической детали.
Логика работы с исполнениями параметрической детали не подразумевает редактирование экземпляра.
Параметрическая деталь может быть двух типов: standard и custom.
Если параметрическая деталь была создана как standard, то экземпляры такой детали не редактируются.