docs/Kompas3D_SDK/ становится каноническим источником справки КОМПАС SDK и включается в репозиторий (2491 файл, ~14 МБ). HTML-зеркало docs/KOMPAS_SDK_ru-RU/ (~1.4 ГБ, © АСКОН) и генератор tools/build_kompas3d_sdk.py больше не нужны — регенерация не предполагается. - .gitignore: MD-база разблокирована; зеркало остаётся проигнорированным (safety-net на случай повторной локальной выгрузки). - CLAUDE.md / SKILL.md: убраны упоминания регенерации и зеркала. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
19 KiB
title, type, api, domain, tags, sources
| title | type | api | domain | tags | sources | |||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Интерфейс событий объектов графических документов ksObject2DNotify/ IObject2DNotify | interface |
|
|
|
|
*API интерфейсов. Версия 5 > Интерфейсы событий API5 > События в КОМПАС Общие сведения *
Интерфейс событий объектов графических документов ksObject2DNotify/ IObject2DNotify
| ksObject2DNotify | - интерфейс Automation |
|---|---|
| IObject2DNotify | - интерфейс COM |
| Позволяют контролировать редактирование объектов графического документа. | |
| В Automation источник событий для подписки Object2DNotify можно получить при помощи метода ksDocument2D::GetObject2DNotify. | |
| В СOM контейнером для подписки является указатель на графический документ. | |
| Дополнительный параметр при подписке задает объекты, для которых предназначен данный интерфейс событий. | |
| Таким параметром является либо тип объекта (ALL_OBJ...AXISLINE_OBJ, VIEW_OBJ), либо указатель на объект. | |
| Если задан тип объекта, события генерируются для всех объектов этого типа. | |
| Если задан указатель на объект, события генерируются только для этого объекта. | |
| Если задан тип объектов ALL_OBJ, события генерируются для всех объектов. | |
| В процессе обработки события можно получить информацию о редактировании объекта при помощи интерфейса IObject2DNotifyResult для COM или ksObject2DNotifyResult для Automation. | |
| В Automation получить интерфейс результата можно при помощи метода ksDocument2D::GetObject2DNotifyResult. | |
| В COM получить интерфейс результата можно при помощи экспортной функции ksGetObject2DNotifyResult. |
BeginCopy - Начало копирования объекта
Синтаксис Automation:
BOOL BeginCopy (long objRef);
Синтаксис COM:
BOOL BeginCopy(long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - копировать объект,
FALSE - копирование объекта запрещено.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
BeginDelete - Начало удаления объекта
Синтаксис Automation:
VARIANT_BOOL BeginDestroy (long objRef );
Синтаксис COM:
BOOL BeginDelete (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - удалить объект,
FALSE - удаление объекта запрещено.
Примечание:
- Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
- Для обеспечения корректной обработки события удаления вида, нужно учитывать следующее: •при удалении системного вида, собственно сам системный вид не удаляется, удаляются только все объекты в нем; •номер 0 может иметь служебный вид, создаваемый КОМПАС для режима визуального редактирования макроэлементов, это можно проверить по свойству IView1::EditMacroVisibleRegime.
BeginDestroyObject - Начало разрушения объекта
Синтаксис Automation:
VARIANT_BOOL BeginDestroyObject( long objRef );
Синтаксис COM:
BOOL BeginDestroyObject( long objRef );
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - разрушить объект,
FALSE - разрушение объекта запрещено.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
BeginMove - Начало сдвига объекта
Синтаксис Automation:
BOOL BeginMove (long objRef);
Синтаксис COM:
BOOL BeginMove (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - сдвинуть объект,
FALSE - сдвиг объекта запрещен.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
BeginProcess - Начало редактирования\создания объекта
Синтаксис Automation:
BOOL BeginProcess (long pType, long objRef);
Синтаксис COM:
BOOL BeginProcess (long pType, long objRef);
Входные параметры:
pType - тип объекта (LINESEG_OBJ...AXISLINE_OBJ, VIEW_OBJ)
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - преобразовать объект,
FALSE - преобразование объекта запрещено.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
BeginPropertyChanged - Начало изменения свойств объекта
Синтаксис Automation:
BOOL BeginPropertyChanged( long objRef );
Синтаксис COM:
BOOL BeginPropertyChanged( long objRef );
Входной параметр:
objRef - указатель на объект.
Возвращаемое значение:
TRUE - Разрешить изменение свойств объекта,
FALSE - Запретить изменение свойств объекта.
BeginRotate - Начало поворота объекта
Синтаксис Automation:
BOOL BeginMove (long objRef);
Синтаксис COM:
BOOL BeginRotate (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - повернуть объект,
FALSE - поворот объекта запрещен.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
BeginScale - Начало масштабирования объекта
Синтаксис Automation:
BOOL BeginScale (long objRef);
Синтаксис COM:
BOOL BeginScale (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - масштабировать объект,
FALSE - масштабирование объекта запрещено.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
BeginSymmetry - Начало симметричного преобразования объекта
Синтаксис Automation:
BOOL BeginSymmetry (long objRef);
Синтаксис COM:
BOOL BeginSymmetry (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - преобразовать объект,
FALSE - преобразование объекта запрещено.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
BeginTransform - Начало трансформации объекта
Синтаксис Automation:
BOOL BeginTransform (long objRef);
Синтаксис COM:
BOOL BeginTransform (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
TRUE - трансформировать объект,
FALSE - трансформация объекта запрещена.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
ChangeActive - Переключение активности объекта (вид, слой)
Синтаксис Automation:
BOOL ChangeActive (long objRef);
Синтаксис COM:
BOOL ChangeActive (long objRef);
Входные параметры:
objRef - указатель на вид или слой.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
Copy - Завершение копирования объекта
Синтаксис Automation:
BOOL Copy (long objRef);
Синтаксис COM:
BOOL Copy (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
CreateObject - Объект создан
Синтаксис Automation:
BOOL CreateObject (long objRef);
Синтаксис COM:
BOOL CreateObject (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
Delete - Завершение удаления объекта
Синтаксис Automation:
VARIANT_BOOL Delete( long objRef );
Синтаксис COM:
BOOL Delete (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание:
- Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
- Метод используется при редактировании макроэлементов.
- Для обеспечения корректной обработки события удаления вида, нужно учитывать следующее: – при удалении системного вида собственно сам системный вид не удаляется, удаляются только все объекты в нем; – номер 0 может иметь служебный вид, создаваемый КОМПАС для режима визуального редактирования макроэлементов, это можно проверить по свойству IView1::EditMacroVisibleRegime.
DestroyObject - Завершение удаления объекта
Синтаксис Automation:
BOOL DestroyObject (long objRef);
Синтаксис COM:
VARIANT_BOOL DestroyObject( VARIANT Objects );
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание:
- Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
- Разрушить объекты можно см. описание ksDocument2D::ksDestroyObjects.
EndProcess - Завершение редактирования/создания объекта
Синтаксис Automation:
BOOL EndProcess (long pType);
Синтаксис COM:
BOOL EndProcess (long pType);
Входные параметры:
pType - тип объекта (LINESEG_OBJ...AXISLINE_OBJ, VIEW_OBJ)
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
IsNotIifyProcess - Ограничение обрабатываемых событий
Синтаксис Automation:
Не используется.
Синтаксис COM:
BOOL IsNotifyProcess (int notifyType);
Входной параметр:
notifyType - номер события в перечислении событий.
Возвращаемое значение:
TRUE - событие будет обрабатываться,
FALSE - событие обрабатываться не будет.
Примечание: В COM перед любым вызовом события система сделает запрос о возможности его обработки с использованием данного метода. Библиотека сама может ограничивать обрабатываемые события.
Move - Завершение сдвига объекта
Синтаксис Automation:
BOOL Move (long objRef);
Синтаксис COM:
BOOL Move (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
PropertyChanged - Изменения свойств объекта
Синтаксис Automation:
BOOL PropertyChanged( long objRef );
Синтаксис COM:
BOOLPropertyChanged( long objRef );
Входной параметр:
objRef - указатель на объект.
Возвращаемое значение:
- Не используется.
Rotate - Завершение поворота объекта
Синтаксис Automation:
BOOL Rotate (long objRef);
Синтаксис COM:
BOOL Rotate (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
Scale - Завершение масштабирования объекта
Синтаксис Automation:
BOOL Scale (long objRef);
Синтаксис COM:
BOOL Scale (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
Symmetry - Завершение симметричного преобразования объекта
Синтаксис Automation:
BOOL Symmetry (long objRef);
Синтаксис COM:
BOOL Symmetry (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
Transform - Завершение трансформации объекта
Синтаксис Automation:
BOOL Transform (long objRef);
Синтаксис COM:
BOOL Transform (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.
UpdateObject - Объект отредактирован
Синтаксис Automation:
BOOL UpdateObject (long objRef);
Синтаксис COM:
BOOL UpdateObject (long objRef);
Входные параметры:
objRef - указатель на объект или группу объектов.
Возвращаемое значение:
- не используется.
Примечание: Индекс метода задан в перечислении событий объектов графических документов ksObject2DNotifyEnum.