Files
kompas3d-mcp/docs/Kompas3D_SDK/interfaces/ikompasdocument3d.md
T
mikhail e1337e4016 feat(sdk-docs): MD-база знаний SDK — в репозиторий; генератор и зеркало убраны
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>
2026-05-26 20:00:05 +03:00

579 lines
27 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Интерфейс IKompasDocument3D"
type: interface
api: [api7]
domain: [3d]
tags: [interface, api7, 3d, ikompasdocument3d]
sources:
- ikompasdocument3d.html
---
*API интерфейсов. Версия 7 > Документ  > Базовые интерфейсы  > Интерфейс IKompasDocument  > IKompasDocument - методы *
## Интерфейс IKompasDocument3D
Базовый класс документов-моделей КОМПАС (скрытый).
Иерархия:
IKompasAPIObject
IKompasDocument
IKompasDocument3D
IExternalTessellationManager
ISelectionManager
IChooseManager
Интерфейс событий...
Синтаксис Automation:
```
IKompasDocument3D document3D (application.GetActiveDocument());
```
Синтаксис COM:
```
pApplication->get_ActiveDocument( &document3D );
```
Примечание:
1. Данный интерфейс является базовым для интерфейсов документов-моделей КОМПАС API – детали IPartDocument и сборки IAssemblyDocument.
2. Интерфейс можно получить у интерфейса приложения IApplication с помощью свойства IApplication::ActiveDocument или свойства IApplication::Documents.
3. У данного интерфейса посредством вызова метода IUnknown::QueryInterface (const GUID far& IID, void** pif) можно получить дополнительные интерфейсы:
•IEmbodimentsManager
•IExternalTessellationManager
•ISelectionManager
•IChooseManager
## AttributesEx - Массив атрибутов документа в виде массива SAFEARRAY DISPATCH - VT_ARRAY | VT_DISPATCH
Тип данных: VARIANT
Синтаксис Automation:
```
AttributesEx = Object.AttributesEx( Key1, Key2, Key3, Key4, Numb, Objects, SourcePart ) Получить свойство (* )
AttributesEx = Object.GetAttributesEx( Key1, Key2, Key3, Key4, Numb, Objects, SourcePart ) Получить свойство (**)
```
Синтаксис COM:
```
Object.get_AttributesEx( Key1, Key2, Key3, Key4, Numb, Objects, SourcePart, &AttributesEx ) Получить свойство
Входные параметры:
key1, key2, key3, key4 - ключи атрибута,
Numb - уникальный номер типа атрибута,
Objects - массив VT_ARRAY VT_DISPATCH объектов, для которых назначается атрибут,
SourcePart - указатель на интерфейс вставки детали IPart.
```
Примечание:
Свойство доступно только для чтения.
## ChooseManager - Менеджер выбора (подсветки) объектов
Тип данных: указатель на интерфейс менеджера выбора (подсветки) объектов IChooseManager
Синтаксис Automation:
```
ChooseManager = Object.ChooseManager Получить свойство (* )
ChooseManager = Object.GetChooseManager() Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ChooseManager( &ChooseManager ) Получить свойство
Свойство позволяет получать указатель на менеджер выбора (подсветки) объектов.
```
Примечание:
Свойство доступно только для чтения.
## CreateAttrEx - Создать атрибут по номеру типа атрибута из библиотеки libname
Синтаксис Automation:
```
LPDISPATCH CreateAttrEx( double AttrID, BSTR Libname, VARIANT Objects, IPart7 * SourcePart );
```
Синтаксис COM:
```
HRESULT CreateAttrEx( double AttrID, BSTR Libname, VARIANT Objects, IPart7 * SourcePart, IAttribute ** Result );
Возвращаемое значение:
- указатель на интерфейс IAttribute
Входные параметры:
AttrID - уникальный номер типа атрибута,
Libname - имя библиотеки типов атрибутов, если libname = NULL, то тип атрибута берется из текущего документа,
Objects - массив VT_ARRAY VT_DISPATCH объектов, для которых назначается атрибут,
SourcePart - указатель на интерфейс вставки детали IPart.
```
## CreateObjectsInCurrentLocalCS - Создавать новые объекты в текущей ЛСК
Тип данных: BOOL
Синтаксис Automation:
```
CreateObjectsInCurrentLocalCS = Object.CreateObjectsInCurrentLocalCS Получить свойство (* )
Object.CreateObjectsInCurrentLocalCS = CreateObjectsInCurrentLocalCS Установить свойство (* )
CreateObjectsInCurrentLocalCS = Object.GetCreateObjectsInCurrentLocalCS() Получить свойство (**)
Object.SetCreateObjectsInCurrentLocalCS( CreateObjectsInCurrentLocalCS ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_CreateObjectsInCurrentLocalCS( &CreateObjectsInCurrentLocalCS ) Получить свойство
Object.put_CreateObjectsInCurrentLocalCS( CreateObjectsInCurrentLocalCS ) Установить свойство
```
Примечание:
Свойство позволяет включить режим создания объектов модели в текущей системе координат. Для правильной работы библиотек нужно включить режим, создать нужные объекты и выключить режим.
Если флаг включен, то 3D точка, ломаная, сплайн, эскиз, импортированная поверхность, операция без истории, деталь заготовка через API будут создаваться в текущей локальной системе координат.
Параметры создания в локальной системе координат зависят от настроек системы.
См. также: ISystemSettings::ModelLocalCSCreateInAbsoluteCS и ISystemSettings::ModelLocalCSSetActive.
## DeleteHistory - Удалить историю построения
Синтаксис Automation:
```
BOOL DeleteHistory();
```
Синтаксис COM:
```
HRESULT DeleteHistory( [out, retval] VARIANT_BOOL * Result);
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
Метод позволяет удалить историю построения.
## DrawMode - Режим визуализации
Тип данных: long
Значение свойства:
Из перечисления ViewMode
Синтаксис Automation:
```
long DrawMode = iObject.DrawMode Получить свойство (* )
iObject.DrawMode = DrawMode Установить свойство (* )
long DrawMode = iObject.GetDrawMode() Получить свойство (**)
iObject.SetDrawMode( DrawMode ) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_DrawMode( &DrawMode ) Получить свойство
iObject->put_DrawMode( DrawMode ) Установить свойство
```
## EnableUndo - Включить/отключить добавление команд в Undo
Тип данных: BOOL
Синтаксис:
```
EnableUndo = Object.EnableUndo Получить свойство (* )
Object.EnableUndo = EnableUndo Установить свойство (* )
EnableUndo = Object.GetEnableUndo() Получить свойство (**)
Object.SetEnableUndo( EnableUndo ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_EnableUndo( &EnableUndo ) Получить свойство
Object.put_EnableUndo( EnableUndo ) Установить свойство
```
## HideAllAuxiliaryGeom - Скрыть/показать все вспомогательные объекты
Тип данных: BOOL
Синтаксис Automation:
```
HideAllAuxiliaryGeom = Object.HideAllAuxiliaryGeom Получить свойство (* )
Object.HideAllAuxiliaryGeom = HideAllAuxiliaryGeom Установить свойство (* )
HideAllAuxiliaryGeom = Object.GetHideAllAuxiliaryGeom() Получить свойство (**)
Object.SetHideAllAuxiliaryGeom( HideAllAuxiliaryGeom ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_HideAllAuxiliaryGeom( &HideAllAuxiliaryGeom ) Получить свойство
Object.put_HideAllAuxiliaryGeom( HideAllAuxiliaryGeom ) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllAxis - Скрыть/показать конструктивные оси
Тип данных: BOOL
Значения свойства:
| TRUE | - конструктивные оси скрыты, |
| --- | --- |
| FALSE | - конструктивные оси показаны. |
Синтаксис Automation:
```
BOOL HideAllAxis = iObject.HideAllAxis Получить свойство (* )
iObject.HideAllAxis = HideAllAxis Установить свойство (* )
BOOL HideAllAxis = iObject.GetHideAllAxis() Получить свойство (**)
iObject.SetHideAllAxis (HideAllAxis) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_HideAllAxis (&HideAllAxis) Получить свойство
iObject->put_HideAllAxis (HideAllAxis) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllControlPoints - Скрыть/показать контрольные точки
Тип данных: BOOL
Значения свойства:
| TRUE | - контрольные точки скрыты, |
| --- | --- |
| FALSE | - контрольные точки показаны. |
Синтаксис Automation:
```
BOOL HideAllControlPoints = iObject.HideAllControlPoints Получить свойство (* )
iObject.HideAllControlPoints = HideAllControlPoints Установить свойство (* )
BOOL HideAllControlPoints = iObject.GetHideAllControlPoints() Получить свойство (**)
iObject.SetHideAllControlPoints (HideAllControlPoints) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_HideAllControlPoints (&HideAllControlPoints) Получить свойство
iObject->put_HideAllControlPoints (HideAllControlPoints) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllCurves - Скрыть/показать пространственные кривые
Тип данных: BOOL
Значения свойства:
| TRUE | - пространственные кривые скрыты, |
| --- | --- |
| FALSE | - пространственные кривые показаны. |
Синтаксис Automation:
```
BOOL HideAllCurves = iObject.HideAllCurves Получить свойство (* )
iObject.HideAllCurves = HideAllCurves Установить свойство (* )
BOOL HideAllCurves = iObject.GetHideAllCurves() Получить свойство (**)
iObject.SetHideAllCurves (HideAllCurves) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_HideAllCurves (&HideAllCurves) Получить свойство
iObject->put_HideAllCurves (HideAllCurves) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllDesignations - Скрыть/показать условные обозначения
Тип данных: BOOL
Синтаксис Automation:
```
HideAllDesignations = Object.HideAllDesignations Получить свойство (* )
Object.HideAllDesignations = HideAllDesignations Установить свойство (* )
HideAllDesignations = Object.GetHideAllDesignations() Получить свойство (**)
Object.SetHideAllDesignations( HideAllDesignations ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_HideAllDesignations( &HideAllDesignations ) Получить свойство
Object.put_HideAllDesignations( HideAllDesignations ) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllDimensions - Скрыть/показать размеры
Тип данных: BOOL
Синтаксис Automation:
```
HideAllDimensions = Object.HideAllDimensions Получить свойство (* )
Object.HideAllDimensions = HideAllDimensions Установить свойство (* )
HideAllDimensions = Object.GetHideAllDimensions() Получить свойство (**)
Object.SetHideAllDimensions( HideAllDimensions ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_HideAllDimensions( &HideAllDimensions ) Получить свойство
Object.put_HideAllDimensions( HideAllDimensions ) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllPlaces - Скрыть/показать начала координат
Тип данных: BOOL
Значения свойства:
| TRUE | - начала координат скрыты, |
| --- | --- |
| FALSE | - начала координат показаны. |
Синтаксис Automation:
```
BOOL HideAllPlaces = iObject.HideAllPlaces Получить свойство (* )
iObject.HideAllPlaces = HideAllPlaces Установить свойство (* )
BOOL HideAllPlaces = iObject.GetHideAllPlaces() Получить свойство (**)
iObject.SetHideAllPlaces (HideAllPlaces) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_HideAllPlaces (&HideAllPlaces) Получить свойство
iObject->put_HideAllPlaces (HideAllPlaces) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllPlanes - Скрыть/показать конструктивные плоскости
Тип данных: BOOL
Значения свойства:
| TRUE | - конструктивные плоскости скрыты, |
| --- | --- |
| FALSE | - конструктивные плоскости показаны. |
Синтаксис Automation:
```
BOOL HideAllPlanes = iObject.HideAllPlanes Получить свойство (* )
iObject.HideAllPlanes = HideAllPlanes Установить свойство (* )
BOOL HideAllPlanes = iObject.GetHideAllPlanes() Получить свойство (**)
iObject.SetHideAllPlanes (HideAllPlanes) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_HideAllPlanes (&HideAllPlanes) Получить свойство
iObject->put_HideAllPlanes (HideAllPlanes) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllSketches - Скрыть/показать эскизы
Тип данных: BOOL
Значения свойства:
| TRUE | - эскизы скрыты, |
| --- | --- |
| FALSE | - эскизы показаны. |
Синтаксис Automation:
```
BOOL HideAllSketches = iObject.HideAllSketches Получить свойство (* )
iObject.HideAllSketches = HideAllSketches Установить свойство (* )
BOOL HideAllSketches = iObject.GetHideAllSketches() Получить свойство (**)
iObject.SetHideAllSketches (HideAllSketches) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_HideAllSketches (&HideAllSketches) Получить свойство
iObject->put_HideAllSketches (HideAllSketches) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllSurfaces - Скрыть/показать поверхности
Тип данных: BOOL
Значения свойства:
| TRUE | - поверхности скрыты, |
| --- | --- |
| FALSE | - поверхности показаны. |
Синтаксис Automation:
```
BOOL HideAllSurfaces = iObject.HideAllSurfaces Получить свойство (* )
iObject.HideAllSurfaces = HideAllSurfaces Установить свойство (* )
BOOL HideAllSurfaces = iObject.GetHideAllSurfaces() Получить свойство (**)
iObject.SetHideAllSurfaces (HideAllSurfaces) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_HideAllSurfaces (&HideAllSurfaces) Получить свойство
iObject->put_HideAllSurfaces (HideAllSurfaces) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideAllThreads - Резьбы
Тип данных: BOOL
Значения свойства:
| TRUE | - резьбы скрыты, |
| --- | --- |
| FALSE | - резьбы показаны. |
Синтаксис Automation:
```
BOOL HideAllThreads = iObject.HideAllThreads Получить свойство (* )
iObject.HideAllThreads = HideAllThreads Установить свойство (* )
BOOL HideAllThreads = iObject.GetHideAllThreads() Получить свойство (**)
iObject.SetHideAllThreads (HideAllThreads) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_HideAllThreads (&HideAllThreads) Получить свойство
iObject->put_HideAllThreads (HideAllThreads) Установить свойство
```
Примечание:
В зависимости от флага HideInComponentsMode позволяет скрыть или показать все вспомогательные объекты в документе или, если документ является сборкой, во вставках.
## HideInComponentsMode - Режим скрытия вспомогательной геометрии в компонентах
Тип данных: BOOL
Синтаксис Automation:
```
HideInComponentsMode = Object.HideInComponentsMode Получить свойство (* )
Object.HideInComponentsMode = HideInComponentsMode Установить свойство (* )
HideInComponentsMode = Object.GetHideInComponentsMode() Получить свойство (**)
Object.SetHideInComponentsMode( HideInComponentsMode ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_HideInComponentsMode( &HideInComponentsMode ) Получить свойство
Object.put_HideInComponentsMode( HideInComponentsMode ) Установить свойство
```
Примечание:
Флаг позволяет для сборки включить режим работы с флагами скрытия вспомогательной геометрии во вставках или в документе.
Если флаг включен, то свойства: HideAllPlanes, HideAllAxis, HideAllSketches, HideAllPlaces, HideAllSurfaces, HideAllThreads, HideAllCurves, HideAllControlPoints, HideAllDimensions, HideAllDesignations, HideAllAuxiliaryGeom
управляют признаками скрытия вспомогательной геометрии во вставках.
## Perspective - Скрыть/показать перспективу
Тип данных: BOOL
Значения свойства:
| TRUE | - показывать перспективу, |
| --- | --- |
| FALSE | - не показывать перспективу. |
Синтаксис Automation:
```
BOOL Perspective = iObject.Perspective Получить свойство (* )
iObject.Perspective = Perspective Установить свойство (* )
BOOL Perspective = iObject.GetPerspective() Получить свойство (**)
iObject.SetPerspective (Perspective) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Perspective (&Perspective) Получить свойство
iObject->put_Perspective (Perspective) Установить свойство
```
## RebuildDocument - Перестроить документ
Синтаксис Automation:
```
BOOL RebuildDocument();
```
Синтаксис COM:
```
HRESULT RebuildDocument( BOOL * Result );
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
Метод позволяет вызвать перестроение 3D-документа.
## SelectionManager - Менеджер селектированных объектов
Тип данных: указатель на интерфейс менеджера селектированных объектов ISelectionManager
Синтаксис Automation:
```
SelectionManager = Object.SelectionManager Получить свойство (* )
SelectionManager = Object.GetSelectionManager() Получить свойство (**)
```
Синтаксис COM:
```
Object.get_SelectionManager (&SelectionManager) Получить свойство
Свойство позволяет получать указатель на менеджер селектированных объектов.
```
Примечание:
Свойство доступно только для чтения.
## ShadedWireframe - Полутоновое изображение с каркасом
Тип данных: BOOL
Значения свойства:
| TRUE | - каркас показан, |
| --- | --- |
| FALSE | - каркас скрыт. |
Синтаксис Automation:
```
BOOL ShadedWireframe = iObject.ShadedWireframe Получить свойство (* )
iObject.ShadedWireframe = ShadedWireframe Установить свойство (* )
ShadedWireframe = iObject.GetShadedWireframe() Получить свойство (**)
iObject.SetShadedWireframe (ShadedWireframe) Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ShadedWireframe (&ShadedWireframe) Получить свойство
iObject->put_ShadedWireframe (ShadedWireframe) Установить свойство
```
## TechnicalDemand3D - Технические требования 3D
Тип данных: указатель на интерфейс ITechnicalDemand3D
Синтаксис Automation:
```
TechnicalDemand3D = Object.TechnicalDemand3D Получить свойство (* )
TechnicalDemand3D = Object.GetTechnicalDemand3D() Получить свойство (**)
```
Синтаксис COM:
```
Object.get_TechnicalDemand3D( &TechnicalDemand3D ) Получить свойство
```
Примечание:
1. Свойство доступно только для чтения.
2. Свойство позволяет получить указатель на интерфейс технических требований 3D.
## ToleranceMode - Включить/отключить режим пересчета по допуску
Синтаксис Automation:
```
ToleranceMode = Object.ToleranceMode Получить свойство (* )
Object.ToleranceMode = ToleranceMode Установить свойство (* )
ToleranceMode = Object.GetToleranceMode() Получить свойство (**)
Object.SetToleranceMode( ToleranceMode ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ToleranceMode( &ToleranceMode ) Получить свойство
Object.put_ToleranceMode( ToleranceMode ) Установить свойство
```
Примечание:
Свойство позволяет включать и отключать режим перестроения по допуску.
## TopPart - Верхний компонент (сам документ)
Тип данных: указатель на интерфейс IPart7
Синтаксис Automation:
```
TopPart = iObject.TopPart Получить свойство (* )
TopPart = iObject.GetTopPart() Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_TopPart( &TopPart ) Получить свойство
```
Примечание:
Свойство доступно только для чтения.
## UndoContainer - Включить/отключить объединение команд в Undo
Тип данных: BOOL
Синтаксис:
```
UndoContainer = Object.UndoContainer Получить свойство (* )
Object.UndoContainer = UndoContainer Установить свойство (* )
UndoContainer = Object.GetUndoContainer() Получить свойство (**)
Object.SetUndoContainer( UndoContainer ) Установить свойство (**)
```
Синтаксис COM:
```
Object.get_UndoContainer( &UndoContainer ) Получить свойство
Object.put_UndoContainer( UndoContainer ) Установить свойство
```