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>
16 KiB
title, type, api, domain, tags, sources
| title | type | api | domain | tags | sources | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Интерфейсы ksEntity и iEntity - Интерфейс элемента модели (оси, плоскости, формообразующего элемента) | interface |
|
|
|
|
*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D ) > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart > Объект модели (Интерфейсы ksEntity и IEntity) *
Интерфейсы ksEntity и iEntity - Интерфейс элемента модели (оси, плоскости, формообразующего элемента)
| ksEntity | - интерфейс Automation |
|---|---|
| IEntity | - интерфейс COM |
| Примечание: | |
| Данный интерфейс можно получить от следующих интерфейсов: | |
| •Интерфейс детали или подсборки в составе сборки ksPart или IPart. | |
| •Методы интерфейса коллекции элементов модели ksEntityCollection, IEntityCollection. | |
| •Метод интерфейса документа-модели ksDocument3D::UserSelectEntity или IDocument3D::UserSelectEntity. | |
| •Интерфейс параметров сопряжения ksMateConstraint или IMateConstraint. | |
| •Интерфейс параметров вершины ломаной ksPolyLineVertexParam или IPolygonalLineVertexParam. | |
| •Интерфейсы элементов модели | |
| Интерфейсы пространственных кривых | |
| Интерфейсы поверхностей | |
| Интерфейсы копирования | |
| Интерфейсы копирования компонентов сборки | |
| Интерфейсы формообразующих операций | |
| Интерфейсы дополнительных элементов | |
| Интерфейсы вспомогательной геометрии | |
| Массив ориентированных ребер (Интерфейсы ksOrientedEdgeCollection, IOrientedEdgeCollection) | |
| Интерфейс массива трехмерных тел (Интерфейсы ksBodyCollection, IBodyCollection) | |
| Интерфейс частей тела (Интерфейсы ksBodyParts, IBodyParts) | |
| Интерфейс параметров вершины ломаной Интерфейсы ksPolyLineVertexParam, IPolygonalLineVertexParam) | |
| Интерфейсы параметров умолчательного объекта (IDefaultObject, ksDefaultObject) |
BodyCollection - Получить указатель на интерфейс массива трехмерных тел
Синтаксис Automation:
LPDISPATCH BodyCollection();
Синтаксис COM:
LPBODYCOLLECTION BodyCollection();
Возвращаемое значение:
- указатель на интерфейс массива тел ksBodyCollection или IBodyCollection.
ColorParam - Получить указатель на интерфейс параметров цвета и визуальных свойств объекта
Синтаксис Automation:
LPDISPATCH ColorParam();
Синтаксис COM:
LPCOLORPARAM ColorParam();
Возвращаемое значение:
- указатель на интерфейс ksColorParam или IColorParam.
Create - Создать объект в модели
Синтаксис Automation:
BOOL Create();
Синтаксис COM:
BOOL Create();
Возвращаемое значение:
TRUE - в случае успешного завершения.
Примечание: Данный метод необходимо вызвать для создания объекта в модели после создания интерфейса с помощью метода NewEntity и изменения параметров создаваемого объекта. Если до вызова данного метода свойства объекта не изменены, то объект создается с параметрами, принятыми по умолчанию. Если объект уже создан, то функция вызовет метод Update.
Элементы, существующие в модели по умолчанию
| o3d_planeXOY | = 1 | плоскость XOY |
|---|---|---|
| o3d_planeXOZ | = 2 | плоскость XOZ |
| o3d_planeYOZ | = 3 | плоскость YOZ |
| o3d_pointCS | = 4 | точка начала системы координат |
excluded - Признак включения или выключения из расчета
Тип данных: BOOL Значения свойства:
| TRUE | - исключить из расчёта, |
|---|---|
| FALSE | - включить в расчёт. |
| Синтаксис Automation: |
excluded = iEntity.excluded Получить свойство (* )
iEntity.excluded = excluded Установить свойство (* )
excluded = iEntity.GetExcluded() Получить свойство (**)
iEntity.SetExcluded(excluded) Установить свойство (**)
Примечание:
- После установки признака Excluded в True исключение объекта из расчета происходит сразу, без вызова Update. Поэтому изменение объектов (и вызов Update) нужно делать до переключения Excluded в True.
- Начиная с КОМПАС-3D V12, исключенные из расчета объекты считаются не валидными.
GetAdvancedColor - Получить параметры цвета и визуальных свойств объекта
Синтаксис Automation:
BOOL GetAdvancedColor (long* color,
double* ambient,
double* diffuse,
double* specularity,
double* shininess,
double* transparency,
double* emission);
Синтаксис COM:
BOOL GetAdvancedColor (COLORREF* color,
double* ambient,
double* diffuse,
double* specularity,
double* shininess,
double* transparency,
double* emission);
Выходные параметры:
color - цвет,
ambient - общий свет,
diffuse - диффузия,
specularity - зеркальность,
shininess - блеск,
transparency - прозрачность,
emission - излучение.
Возвращаемое значение:
TRUE - в случае успешного завершения.
GetBodyParts - Получить указатель на интерфейс частей тела
Синтаксис Automation:
LPBODYPARTS GetBodyParts();
Синтаксис COM:
LPDISPATCH GetBodyParts();
Возвращаемое значение:
указатель на интерфейс массива тел ksBodyParts или IBodyParts. - если объект состоит из частей,
NULL - если объект не имеет частей.
Примечание:o
Метод позволяет получить интерфейс частей тела. Если объект не имеет частей, то метод вернет NULL. Части тела могут быть у операций вырезания.
GetDefinition - Получить указатель на интерфейс параметров объектов и элементов
Синтаксис Automation:
LPDISPATCH GetDefinition();
Возвращаемое значение:
- указатель на интерфейс IDispatch.
Синтаксис COM:
LPUNKNOWN GetDefinition();
Возвращаемое значение:
- указатель на интерфейс IUnknown.
Примечание:
- Для доступа к параметрам объекта полученный интерфейс необходимо привести к соответствующему типу. Интерфейсы элементов модели...
- Интерфейсы параметров объектов и элементов выбираются из перечня Obj3dType.
GetFeature - Получить указатель на интерфейс объекта дерева, связанного с данным объектом
Синтаксис Automation:
LPDISPATCH GetFeature();
Синтаксис COM:
LPFEATURE GetFeature();
Возвращаемое значение:
- указатель на интерфейс ksFeature или IFeature - объект дерева, связанный с данным объектом.
GetParent - Получить указатель на интерфейс компонента, владеющего элементом (например, интерфейс детали, владеющей указанной гранью)
Синтаксис Automation:
LPDISPATCH GetParent()
Синтаксис COM:
LPPART GetParent();
Возвращаемое значение:
- указатель на интерфейс ksPart или IPart.
hidden - Состояние видимости объекта
Тип данных: BOOL Значения свойства:
| TRUE | - объект скрытый, |
|---|---|
| FALSE | - объект видимый. |
| Синтаксис Automation: |
hidden = iEntity.hidden Получить свойство (* )
iEntity.hidden = hidden Установить свойство (* )
hidden = iEntity.GetHidden() Получить свойство (**)
iEntity.SetHidden(hidden) Установить свойство (**)
IsCreated - Получить признак существования объекта
Синтаксис Automation:
BOOL IsCreated();
Синтаксис COM:
BOOL IsCreated();
Возвращаемое значение:
TRUE - если объект уже создан,
FALSE - если объект удален или еще не создан.
IsIt - Проверить объект на соответствие указанному типу
Синтаксис Automation:
BOOL IsIt (short objType);
Синтаксис COM:
BOOL IsIt (short objType)
Входной параметр:
objType - тип объекта.
Возвращаемое значение:
TRUE - если тип объекта указан правильно.
Типы объектов...
Примечание: Числовой идентификатор типа объекта не должен превышать идентификатора объекта, всегда последнего из Entity.
MultiBodyParts - Признак того, что компонент состоит из нескольких частей
Тип данных: BOOL Значения свойства:
| TRUE | - компонент состоит из нескольких частей, |
|---|---|
| FALSE | - компонент не состоит из нескольких частей. |
| Синтаксис Automation: |
MultiBodyParts = iEntity.MultiBodyParts Получить свойство (* )
MultiBodyParts = iEntity.GetMultiBodyParts() Получить свойство (**)
Примечания: Свойство позволяет узнать. состоит ли компонент их нескольких частей. В результате работы метода можно получить компонент (деталь), состоящую из нескольких частей. С точки зрения конструктора, деталь должна представлять нечто целое. Частей быть не должно. Следовательно, нужно отыскать в компоненте операции, порождающие несколько частей, и выключить из расчета не нужные, чтобы образовалось целое тело.
name - Имя элемента трехмерной модели (оси, плоскости, формообразующего элемента)
Тип данных: строка Синтаксис Automation:
name = iEntity.name Получить свойство (* )
iEntity.name = name Установить свойство (* )
name = iEntity.GetName() Получить свойство (**)
iEntity.SetName(name) Установить свойство (**)
SetAdvancedColor - Изменить параметры цвета и визуальных свойств объекта
Синтаксис Automation:
BOOL SetAdvancedColor (long color,
double ambient,
double diffuse,
double specularity,
double shininess,
double transparency,
double emission);
Синтаксис COM:
BOOL SetAdvancedColor (COLORREF color,
double ambient,
double diffuse,
double specularity,
double shininess,
double transparency,
double emission);
Входные параметры:
color - цвет,
ambient - общий свет,
diffuse - диффузия,
specularity - зеркальность,
shininess - блеск,
transparency - прозрачность,
emission - излучение.
Возвращаемое значение:
TRUE - в случае успешного завершения.
type - Тип объекта трехмерной модели
Тип данных: short Значения свойства... Синтаксис Automation:
type = iEntity.type Получить свойство (* )
iEntity.type = type Установить свойство (* )
type = iEntity.GetType() Получить свойство (**)
iEntity.SetType(type) Установить свойство (**)
Примечание:
- Числовой идентификатор типа объекта не должен превышать идентификатор объекта, всегда последнего из Entity.
- Свойство только для чтения.
Update - Изменить свойства объекта (используя ранее установленные свойства)
Синтаксис Automation:
BOOL Update();
Синтаксис COM:
BOOL Update();
Возвращаемое значение:
TRUE - в случае успешного завершения.
Примечание:
- Изменение параметров объекта через интерфейс его параметров не приводит к перестроению модели.
- Для перестроения объекта в модели (активизации текущих изменений) необходимо вызвать данный метод. Если свойству ksPart::needRebuild компонента, которому принадлежит данный объект, установлено значение TRUE, то вызов данного метода приведет также к перестроению модели. Если свойству ksPart::needRebuild установлено значение FALSE, то данный метод только передаст изменения свойств модельному объекту, и для реального (визуального) изменения этих свойств нужно вызвать метод ksPart::RebuildModelEx, с параметром redraw равным TRUE.
- Объект должен быть предварительно создан методом Create.
useColor - Используемый цвет (цвет источника, цвет хозяина, цвет слоя, собственный цвет)
Тип данных: UseColor Синтаксис Automation:
useColor = Object.useColor Получить свойство(* )
Object.useColor = useColor Установить свойство (* )
useColor = Object.GetUseColor() Получить свойство (**)
Object.SetUseColory( useColor ) Установить свойство (**)