Массив вдоль кривой

Программирование для CATIA.

Массив вдоль кривой

Сообщение MAV » 27 сен 2007 22:54

Рад созданию нового катийного форума. Неожиданное было приглашение от ExtraRight'а, но я с радостью согласился. Как я вижу, основатели форума - люди заметные по другим 3d форумам :)

Сабж уже поднимался неоднократно на других форумах и даже предлагалась програмка "3D_Translate.exe"? написанная на VB, но надо наполнять этот форум полезной инфой и темами :)

Конечно вопрос не является злободневным. Просто есть у меня мечта сделать (в идеальном варианте кнопку на тулбаре и соответственно чтобы в дереве элемент отображался как массив по кривой с возможностью редактирования параметров) простую возможность пользователям кати строить массив элементов вдоль любой кривой линии. Обидно получается, что даже в солидворксе такой инструмент есть, а в кати это надо делать через...

Я пробовал создавать UDF с параметрами (где бы выбирались: кривая, размножаемый элемент/ы (заносились в List), опционально: количество элементов, с крайними точками, поворот элемента относительно кривой и пр радости массива). Дальше написания кода размножения точек по кривой в Loop'e дело не пошло и, к тому же, текучка не дает расслабиться. А надо еще чтобы каждый элемент из List копировался по созданным точкам + реализация опций...

Может кто-то создал такую штуку? Поделитесь соображениями.
Аватара пользователя
MAV
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 26 сен 2007 22:10

Re: Массив вдоль кривой

Сообщение Zaratustra V » 28 сен 2007 12:40

off: здорова Леха)))
Аватара пользователя
Zaratustra V
Активный участник
Активный участник
 
Сообщения: 283
Зарегистрирован: 20 сен 2007 11:40
Откуда: Москва

Re: Массив вдоль кривой

Сообщение MAV » 29 окт 2007 14:57

К сожалению в кати нет возможности через Loop это проделать (отсутствуют описанные функции Translate и AxisToAxis), а жаль :(
Придется видимо через "реальное" программирование это делать.

Прошу модератора перенести эту тему в раздел Программирования, может там знающие люди подскажут чего путное.
Аватара пользователя
MAV
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 26 сен 2007 22:10

Re: Массив вдоль кривой

Сообщение GTV » 30 окт 2007 13:28

Собственно задача-то несложная. Реально сделать за 10-15 чело/дней.
"Вилка" связна с вариациями набора входных параметров и желаемых опций, а так же набором тест-кейсов.

Пути решения:

1. Через CATIA-Automation (VB) - по всей видимости уже реализован в
MAV писал(а):"3D_Translate.exe"
, но заставить полученный массив динамически отслеживать свои "инпуты" и автоматически перестраиваться (как "родной" КАТЬКИН "паттерн") при реализацией на VB весьма проблематично.

2. Add-In в "Mechanical Design Workbench" реализованный на CAA (c Тул-баорм, Кнопкой\Менюхой, Едитором\Пропертями, параметрами в дереве под фичером и Авто-апдэйтом) - полноценный КАТЬКИН mechanical-фичер с обвеской.

З.Ы. оценка относится ко второму варианту.
Вы суслика видите ?.. а он - есть
Аватара пользователя
GTV
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 25 сен 2007 17:57
Откуда: Минск, Беларусь

Re: Массив вдоль кривой

Сообщение MAV » 30 окт 2007 15:58

Дело в том, что я не программист (кое-что могу написать в VB и в скрипте кнолежда), а CAA, как я понимаю, очень мощная штука, основанная на языке C++, и с помощью ее можно сделать все, что пожелаешь для CATIA. И для использования CAA нужны соответствующие знания, так просто наскоком его, наверное, не освоишь.

Если есть заинтересованнойть расскажу свои соображения: (Как я это хотел делать через loop в кноледже)
1. Ввод данных, как в обычном диалоге массива в КАТИ (curve/path, instances, object to pattern(s), Anchor point, опции: Angle (относительно нормали к кривой), чекбокс - "без поворота")
2. Размножить точки по кривой (можно даже Low применить к дистанции между точками)
3. В полученные точки вставляются системы координат (с соответствующим поворотом Angle относительно с.к. размножаемого объекта)
4. Через функцию AxisToAxis расставить объект(ы) из системы координат объекта(ов) по размноженным с.к.

В принципе можно и без второго пункта обойтись, а начальную точку с.к. расчитывать сразу на кривой.

К моему сожалению в Loop (в том языке кноледжа, доступного через loop) функция объявлена (только название), но нет описания ее свойств и переменных. Я пытался подобрать названия переменных по аналогии с другими функциями, но не зная структуры функции это у меня не вышло.
Аватара пользователя
MAV
Новичок
Новичок
 
Сообщения: 36
Зарегистрирован: 26 сен 2007 22:10

Re: Массив вдоль кривой

Сообщение Closius » 19 апр 2009 11:54

Ну так что? кто нибудь решил эту проблему?

Массив по кривой просто необходим... например инструментальщикам, для создания затылования фрез.
Closius
Участник
Участник
 
Сообщения: 190
Зарегистрирован: 13 окт 2008 01:18

Re: Массив вдоль кривой

Сообщение Artem » 20 апр 2009 09:52

Ну скажем в дерево и там еще параметры навесить можно (caa rade) но интересно можно ли у копируемых фичеров подменить CATIEdit на свой? Т.е. формализируя:
1)Возможно ли заметить у агрегируемого элемента реализацию интерфейса CATIEdit на реализацию владельца?
2)Вообще возможно ли подменить реализацию интерфейса у существующего экземпляра элемента (или даже всего типа) - не перекомпилируя дллки (для типа)...
3)Возможно ли поменять тип обьекта? (Ну скажем я создал свой тип взяв за супертип ээээээ... например drwtext, переписав все тот же CATIEdit на свой. Могу ли я уже у существующего текста заменить тип на этот?
animae scrinium servitus
Аватара пользователя
Artem
Активный участник
Активный участник
 
Сообщения: 387
Зарегистрирован: 14 сен 2007 07:14


Вернуться в CAA-RADE

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6