---
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();
Возвращаемое значение:
Не используется.
```
