Страница 1 из 1

Как определить IID объекта

СообщениеДобавлено: 17 янв 2013 18:46
rash
Вопрос более определенный. Какой IID имеет объект Text with Leader из тулбара Annotations в воркбенче Drafting?
В энциклопедии по CAA нашел IID остальных объектов кроме этого.

Как вообще можно определить IID интересующих объектов?

Re: Как определить IID объекта

СообщениеДобавлено: 18 янв 2013 10:27
Artem
Title= Text with Leader
Id = CATDrwTextLeaderHdr
DLL = CATDiaText
Cmd = CATDrwTextCmd
Arg = <an address> State Initial = 1
State Current = 1
Не помню Id==IID, если нет то извиняйте.....

Re: Как определить IID объекта

СообщениеДобавлено: 18 янв 2013 18:30
VladimirK
Здравствуйте.

Попробуйте использовать IID_CATIADrawingLeader.

Найти IID интерфейсов интересующих объектов чертежа можно в файле <Путь установки CATIA>\<intel_a|win_b64>\code\dictionary\DraftingInterfaces.iid, потом дописать префикс IID_

По крайней мере, у меня так получилось использовать IID_CATIADrawingLeaders при получении выносок текста через метод QueryInterface().

Re: Как определить IID объекта

СообщениеДобавлено: 21 янв 2013 04:26
rash
Большое спасибо за ответы.
ID интерфейса для текста с выноской в САА С++ называется IID_CATIDrwLeader.

Re: Как определить IID объекта

СообщениеДобавлено: 21 янв 2013 12:12
bit
rash писал(а):Большое спасибо за ответы.
ID интерфейса для текста с выноской в САА С++ называется IID_CATIDrwLeader.

CATIDrwLeader - это сама выноска, текст - CATIDrwText

Re: Как определить IID объекта

СообщениеДобавлено: 21 янв 2013 12:16
bit
rash писал(а):Как вообще можно определить IID интересующих объектов?

В RADE есть утилита, называется ObjectBrowser.
Она показывает все интерфейсы для каждого типа , и наоборот все типы у которых определен данный интерфейс.
В самой дешевой версии RADE (ABC) она ,кажется, не доступна, в СDV точно есть.