Ориентация Punch

Автор Тема: Ориентация Punch  (Прочитано 1515 раз)

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

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

  • ADN Club
  • ****
  • Сообщений: 263
  • Карма: 2
Ориентация Punch
« : 19-05-2021, 08:55:24 »
Для листовой детали (материал - полоса, на любом участке детали ширина фиксирована) необходимо выполнить Punch. Форма детали и методу построения могут быть разными. Punch вызывается из среды эскиза Sketch.Edit.
Задача: Овал выштамповки должен быть вытянут вдоль длины полосы на любом участке размещения.
Не понятно какие параметры должны должны быть исходными элементами для ориентирования?
Например,  если Sketch.AxisEntity сориентирован правильно (горизонтальная ось Х совпадает с шириной полосы) - Punch, на разных участках, может ориентироваться, как вдоль полосы, так и поперек:


Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 751
  • Карма: 195
  • Skype: mikazakov@mail.ru
Re: Ориентация Punch
« Ответ #1 : 19-05-2021, 17:26:38 »
ну ты хоть бы пример макроса и пример своего панча выложил бы.
панч это же ifeature, по сути своей

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

  • ADN Club
  • ****
  • Сообщений: 263
  • Карма: 2
Re: Ориентация Punch
« Ответ #2 : 20-05-2021, 08:38:04 »
Вот самый простой пример файлов: на первый эскиз выштамповка ложиться правильно, а на второй - под углом.
А макроса и нет пока - только перебираю свойства эскиза, в поисках отправной точки для позиционирования:
Код - Visual Basic [Выбрать]
  1.     Dim oDoc As PartDocument
  2.     Set oDoc = ThisApplication.ActiveDocument
  3.     Dim oSMDef As SheetMetalComponentDefinition
  4.     Set oSMDef = oDoc.ComponentDefinition
  5.     Dim oSketch As Sketch
  6.     Set oSketch = ThisApplication.ActiveEditObject
Кажется, для понимания ориентирования эскиза, нужно будет операться на сравнение oSketch.ModelToSketchSpace(oSketch.AxisEntity.Edge.Geometry.StartPoint) и EndPoint - еще не уверен в правильности этого выбора и как именного его сформулировать?!

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 751
  • Карма: 195
  • Skype: mikazakov@mail.ru