--- title: "Интерфейс ksProcess3DNotify\\IProcess3DNotify" type: interface api: [api7] domain: [3d] tags: [interface, api7, 3d, ksprocess3dnotify] sources: - ksprocess3dnotify.html --- *API интерфейсов. Версия 7 > Интерфейсы событий * ## Интерфейс ksProcess3DNotify\IProcess3DNotify Интерфейс событий для процесса 3D. Иерархия: IDispatch ksProcess3DNotify События позволяют контролировать события процесса 3D. Источником событий для подписки на данный интерфейс является: IProcess3D - интерфейс процесса 3D. ## AbortProcess - Прерывание процесса при запуске другого процесса или команды Синтаксис Automation: ``` BOOL AbortProcess(); ``` Синтаксис COM: ``` BOOL AbortProcess(); Возвращаемое значение: не используется. Версия: Компас v20 ``` ## Activate - Активизация процесса Синтаксис Automation: ``` BOOL Activate(); ``` Синтаксис COM: ``` BOOL Activate(); Возвращаемое значение: Не используется. ``` ## CreateTakeObject - Создание объекта в подпроцессе Синтаксис Automation: ``` BOOL CreateTakeObject( LPDISPATCH Object ); ``` Синтаксис COM: ``` BOOL CreateTakeObject( LPUNKNOWN Object ); Возвращаемое значение: TRUE - если объект подходит. Входные параметры: Object - указатель на на созданный объект при использовании автоматизации указатель IModelObject, IMateConstraint3D в зависимости от типа подпроцесса, при использовании COM указатель IEntity, IMateConstraint в зависимости от типа подпроцесса. ``` ## Deactivate - Деактивизация процесса Синтаксис Automation: ``` BOOL Deactivate(); ``` Синтаксис COM: ``` BOOL Deactivate(); Возвращаемое значение: Не используется. ``` ## EndProcess - Завершение процесса Синтаксис Automation: ``` BOOL EndProcess(); ``` Синтаксис COM: ``` BOOL EndProcess(); Возвращаемое значение: Не используется. ``` ## ExecuteCommand - Выполнить команду меню процесса Синтаксис Automation: ``` BOOL ExecuteCommand( long Command ); ``` Синтаксис COM: ``` BOOL ExecuteCommand( long Command ); Возвращаемое значение: TRUE - если параметры процесса изменились. Входные параметры: Command - номер команды меню процесса. ``` ## FilterObject - Фильтрация объектов под курсором Синтаксис Automation: ``` BOOL FilterObject( LPDISPATCH Object ); ``` Синтаксис COM: ``` BOOL FilterObject( LPUNKNOWN Object ); Возвращаемое значение: TRUE - если объект подходит. Входные параметры: Object - указатель на объект под курсором: при использовании автоматизации указатель IModelObject, IPart7, IBody7, IMateConstraint3D в зависимости от типа выбранного объекта, при использовании COM указатель IEntity, IPart, IBody, IMateConstraint в зависимости от типа выбранного объекта. ``` ## PlacementChange - Изменение положения Синтаксис Automation: ``` BOOL PlacementChange( LPDISPATCH Object ); ``` Синтаксис COM: ``` BOOL PlacementChange( LPUNKNOWN Object ); Возвращаемое значение: TRUE - если параметры процесса изменились. Входные параметры: Object - указатель на выбранный объект: при использовании автоматизации указатель IModelObject, IPart7, IBody7 в зависимости от типа выбранного объекта, при использовании COM указатель IEntity, IPart, IBody в зависимости от типа выбранного объекта. ``` ## ProcessingGroupObjects - Обработать объекты, пришедшие из рамки Синтаксис Automation: ``` BOOL ProcessingGroupObjects( VARIANT Objects, long selectionType ); ``` Синтаксис COM: ``` HRESULT ProcessingGroupObjects( VARIANT Objects, long selectionType, BOOL * Result ); Возвращаемое значение: TRUE - в случае успешного завершения. Выходные параметры: Objects - массив объектов, selectionType - тип выделения. ``` Примечание Если процесс должен поддерживать групповое селектирование рамкой, требуется установить свойство IProcess3D::SelectionBandMode. ## Run - Запуск процесса Синтаксис Automation: ``` BOOL Run(); ``` Синтаксис COM: ``` BOOL Run(); Возвращаемое значение: Не используется. ``` ## Stop - Остановка процесса Синтаксис Automation: ``` BOOL Stop(); ``` Синтаксис COM: ``` BOOL Stop(); Возвращаемое значение: Не используется. ```