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

ADN Club => Inventor API => Тема начата: R.I.Chernov от 03-10-2016, 15:09:17

Название: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: R.I.Chernov от 03-10-2016, 15:09:17
Доброго времени суток, уважаемые форумчане! Помогите пожалуйста с вопросом, указанным в теме. У меня есть отверстие, сделанное с помощью выдавливания, из этого отверстия сделан прямоугольный массив. Мне требуется поставить диаметр, допустим, 3-го члена массива. Не могу понять, как мне это сделать. Буду признателен любому совету.

П.С. На текущий момент есть вот что (привожу лишь конец кода, дабы не разводить писанину):
Код - Visual Basic [Выбрать]
  1. '    ссылка на массив
  2.    Dim oRPFeature As RectangularPatternFeature
  3.     Set oRPFeature = oRPFeatures.Item("M1")
  4.    
  5.     Dim oFPElements As FeaturePatternElements
  6.     Set oFPElements = oRPFeature.PatternElements
  7.     Dim oFPElement As FeaturePatternElement
  8.     Set oFPElement = oFPElements(3)
  9.     Dim oProxy As FeaturePatternElementProxy
  10.     oOcc.CreateGeometryProxy oFPElement, oProxy
  11.     Dim oCurves As DrawingCurvesEnumerator
  12.     Set oCurves = oView.DrawingCurves(oProxy)

В последней строке выдает ошибку. Не могу понять почему. Если сделать аналогичную строчку, и поставить ссылку прокси непосредственно на выдавливание, с которого делаю массив, то все работает.
Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: mikazakov от 03-10-2016, 16:10:26
Массив то где сделан в сборке?
Подробнее пожалуйста.
Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: R.I.Chernov от 03-10-2016, 16:33:40
Массив то где сделан в сборке?
Отверстие - вылавливание в детали, там же сделан массив. Деталь вставлена в сборку, поэтому обращаюсь к элементам через прокси. Требуется нанести на чертеже размер диаметр на один из элементов массива.Задача схожа с той, что я решал пару тем назад. Там я ставил диаметр одиночного отверстия, теперь я загнал его в массив.
Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: mikazakov от 04-10-2016, 09:08:55
Там я ставил диаметр одиночного отверстия, теперь я загнал его в массив.
у се равно не понятно
Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: R.I.Chernov от 04-10-2016, 11:56:00
у се равно не понятно
Михаил, в общем суть такая: я поставил цель - пошагово разбираться в потенциальных задачах. Сначала была зададача поставить диаметр отверстия, которое выполнено с помощью операции "extrude" в детали. Деталь помещена в сборку. С этой задачей я с вашей помощью справился: обратился через прокси к коллекции Curves, которые относятся к данному отверстию, ну а дальше манипуляциями ставлю диаметр. Усложнил задачу: теперь мне надо найти ту же коллекцию Curves, но когда это отверстие в детали замессивировано. Ну то есть, я хочу поставить диаметр, например третий член (отверстие) в массиве. Не могу найти коллегию Curves.
Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: Александр Ривилис от 04-10-2016, 14:23:59
R.I.Chernov
Может файлик выложите - Михаилу будет понятнее. Если бы шла речь об AutoCAD - то я точно попросил бы файл.
Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: R.I.Chernov от 05-10-2016, 13:38:29
Может файлик выложите
Следую совету - выкладываю файл.
Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: mikazakov от 05-10-2016, 20:11:23
Использовать FeaturePatternElementProxy у меня за целый час тоже не получилось.

Но, если поставить размер к этим отмассивленным отверстиям и посмотреть к чему они привязываются,
то видно что это объект EdgeProxy, может это даст какие-либо мысли



Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: R.I.Chernov от 05-10-2016, 22:43:47
Использовать FeaturePatternElementProxy у меня за целый час тоже не получилось.

Но, если поставить размер к этим отмассивленным отверстиям и посмотреть к чему они привязываются,
то видно что это объект EdgeProxy, может это даст какие-либо мысли
Ок, спасибо, буду дальше искать. П.С. Подскажите пожалуйста, как вы посмотрели, к чему привязан размер, ну в смысле какое свойство за это отвечает?
Название: Re: Прямоугольный массив из отверстий, как поставить диаметр одного из них?
Отправлено: mikazakov от 06-10-2016, 16:44:51
к чему привязан размер, ну в смысле какое свойство за это отвечает?
ActiveSheet.GeneralDimensions(1).Intent.Geometry.ModelGeometry