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>
15 KiB
title, type, api, domain, tags, sources
| title | type | api | domain | tags | sources | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Массив объектов модели (Интерфейсы ksEntityCollection и IEntityCollection) | interface |
|
|
|
|
*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D ) > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart *
Массив объектов модели (Интерфейсы ksEntityCollection и IEntityCollection)
Интерфейс массива объектов модели.
| ksEntityCollection | - интерфейс Automation |
|---|---|
| IEntityCollection | - интерфейс COM |
| Примечание: | |
| Данный интерфейс можно получить от следующих интерфейсов: | |
| •Интерфейс вырезанного кинематического элемента ksCutEvolutionDefinition или ICutEvolutionDefinition. | |
| •Интерфейс детали или подсборки в составе сборки ksPart или IPart. | |
| •Интерфейс документа-модели ksDocument3D или IDocument3D. | |
| •Интерфейс зеркальной копии ksMirrorCopyDefinitiont или IMirrorCopyDefinitiont. | |
| •Интерфейс объекта Дерева построения ksFeaturet или IFeaturet. | |
| •Интерфейс операции копирования компонентов сборки по кривой ksCurvePartArrayDefinitiont или ICurvePartArrayDefinitiont. | |
| •Интерфейс операции копирования по кривой ksCurveCopyDefinitiont или ICurveCopyDefinitiont. | |
| •Интерфейс операции копирования по окружности ksCircularCopyDefinitiont или ICircularCopyDefinition. | |
| •Интерфейс операции копирования по сетке ksMeshCopyDefinitiont или ICopyMeshDefinitiont. | |
| •Интерфейс параметров вырезанного элемента по сечениям ksCutLoftDefinitiont или ICutLoftDefinitiont. | |
| •Интерфейс параметров запроса к системе ksRequestInfo3D или IRequestInfo. | |
| •Интерфейс параметров кинематической поверхности ksEvolutionSurfaceDefinitiont или IEvolutionSurfaceDefinitiont. | |
| •Интерфейс параметров основания - кинематического элемента ksBaseEvolutionDefinitiont или IBaseEvolutionDefinitiont. | |
| •Интерфейс параметров основания - элемента по сечениям ksBaseLoftDefinition или IBaseLoftDefinition. | |
| •Интерфейс параметров поверхности по сечениям ksLoftSurfaceDefinition или ILoftSurfaceDefinitiont. | |
| •Интерфейс параметров фаски ksChamferDefinition или IChamferDefinition, | |
| •Интерфейс параметров элемента "скругление" ksFilletDefinition или IFilletDefinition. | |
| •Интерфейс приклеенного кинематического элемента ksBossEvolutionDefinition или IBossEvolutionDefinition. | |
| •Интерфейс приклеенного элемента по сечениям ksBossLoftDefinition или IBossLoftDefinition. | |
| •Интерфейс тонкостенной оболочки ksShellDefinition или IShellDefinition. | |
| •Интерфейс уклона ksInclineDefinition или IInclineDefinition. |
Add - Добавить объект в массив
Синтаксис Automation:
BOOL Add (LPDISPATCH entity);
Синтаксис COM:
BOOL Add (LPENTITY entity);
Входной параметр:
entity - интерфейс добавляемого элемента ksEntity или IEntity.
Возвращаемое значение:
Функция возвращает TRUE в двух случаях:
•Если при работе с динамическим массивом объектов модели (метод EntityCollection) checkEntity - признак проверки для вновь добавляемых объектов на NULL - имеет значение FALSE (т.е. в массив можно добавить NULL).
•Если при работе с динамическим массивом объектов модели checkEntity имеет значение TRUE (т.е. в массив нельзя добавить NULL) и объект - не NULL.
Функция возвращает FALSE, если при работе с динамическим массивом объектов модели checkEntity - имеет значение TRUE (т.е. в массив нельзя добавить NULL) и объект - NULL.
AddAt - Добавить объект в массив с заданным индексом
Синтаксис Automation:
BOOL AddAt (LPDISPATCH entity,
long index);
Синтаксис COM:
BOOL AddAt (LPENTITY entity,
long index);
Входные параметры:
entity - интерфейс добавляемого элемента ksEntity или IEntity,
index - индекс в массиве.
Возвращаемое значение:
Функция возвращает TRUE в двух случаях:
•Если при работе с динамическим массивом объектов модели (метод EntityCollection) checkEntity - признак проверки для вновь добавляемых объектов на NULL - имеет значение FALSE (т.е. в массив можно добавить NULL).
•Если при работе с динамическим массивом объектов модели checkEntity имеет значение TRUE (т.е. в массив нельзя добавить NULL) и объект - не NULL.
Функция возвращает FALSE, если при работе с динамическим массивом объектов модели checkEntity имеет значение TRUE (т.е. в массив нельзя добавить NULL) и объект - NULL.
AddBefore - Добавить объект перед указанным объектом в массиве
Синтаксис Automation:
BOOL AddBefore (LPDISPATCH entity,
LPDISPATCH base);
Синтаксис COM:
BOOL AddBefore (LPENTITY entity,
LPENTITY base);
Входные параметры:
entity - интерфейс добавляемого элемента ksEntity или IEntity,
base - интерфейс базового объекта ksEntity или IEntity (не должен быть 0).
Возвращаемое значение:
Функция возвращает TRUE в двух случаях:
•Если при работе с динамическим массивом объектов модели (метод EntityCollection) checkEntity - признак проверки для вновь добавляемых объектов на NULL - имеет значение FALSE (т.е. в массив можно добавить NULL).
•Если при работе с динамическим массивом объектов модели checkEntity имеет значение TRUE (т.е. в массив нельзя добавить NULL) и объект - не NULL.
Функция возвращает FALSE, если при работе с динамическим массивом объектов модели checkEntity имеет значение TRUE (т.е. в массив нельзя добавить NULL) и объект - NULL.
Clear - Очистить динамический массив объектов
Синтаксис Automation:
BOOL Clear();
Синтаксис COM:
BOOL Clear();
Возвращаемое значение:
TRUE - в случае успешного завершения.
Примечание: Объекты массива из модели не удаляются.
DetachByBody - Удалить указанный объект из массива
Синтаксис Automation:
BOOL DetachByBody(LPDISPATCH entity);
Синтаксис COM:
BOOL DetachByBody(LPENTITY entity);
Входной параметр:
entity - указатель на интерфейс удаляемого элемента ksEntity или IEntity.
Возвращаемое значение:
TRUE - в случае успешного завершения.
Примечания:
- Указатель на интерфейс удаляемого объекта entity не должен быть 0.
- Элемент массива из модели не удаляется.
DetachByIndex - Удалить объект из массива по индексу
Синтаксис Automation:
BOOL DetachByIndex(long index);
Синтаксис COM:
BOOL DetachByIndex(long index);
Входной параметр:
index - индекс объекта в массиве.
Возвращаемое значение:
TRUE - в случае успешного завершения.
Примечание: Элемент массива из модели не удаляется.
FindIt - Получить индекс элемента в массиве
Синтаксис Automation:
long FindIt (LPDISPATCH entity);
Возвращаемое значение:
индекс элемента - если элемент найден в массиве,
-1 - если элемент не найден.
Синтаксис COM:
unsigned long FindIt( LPENTITY entity );
Входные параметры:
entity - указатель на интерфейс ksEntity или IEntity.
Возвращаемое значение:
индекс элемента - если элемент найден в массиве,
SYS_MAX_UINT - если элемент не найден.
First - Получить первый объект в массиве
Синтаксис Automation:
LPDISPATCH First();
Синтаксис COM:
LPENTITY First();
Возвращаемое значение:
- указатель на интерфейс ksEntity или IEntity.
GetByIndex - Получить указатель на интерфейс объекта в массиве по индексу
Синтаксис Automation:
LPDISPATCH GetByIndex (long index);
Синтаксис COM:
LPENTITY GetByIndex (long index);
Входной параметр:
index - номер объекта в массиве.
Возвращаемое значение:
- указатель на интерфейс ksEntity или IEntity.
GetByName - Получить указатель на интерфейс объекта в массиве по имени
Синтаксис Automation:
LPDISPATCH GetByName (BSTR name,
BOOL testFullName,
BOOL testIgnoreCase);
Синтаксис COM:
LPENTITY GetByName (LPOLESTR name,
BOOL testFullName,
BOOL testIgnoreCase);
Входные параметры:
name - имя объекта,
testFullName - признак полного имени: TRUE - name - полное имя, FALSE - имя name может быть частью полного имени,
testIgnoreCase - признак игнорирования регистра символов: TRUE - игнорировать регистр, FALSE - учитывать регистр.
Возвращаемое значение:
- указатель на интерфейс ksEntity или IEntity.
GetCount - Получить количество элементов в массиве
Синтаксис Automation:
long GetCount();
Синтаксис COM:
long GetCount();
Возвращаемое значение:
- количество элементов массива.
Last - Получить указатель на интерфейс последнего объекта в массиве
Синтаксис Automation:
LPDISPATCH Last();
Синтаксис COM:
LPENTITY Last();
Возвращаемое значение:
- указатель на интерфейс ksEntity или IEntity.
Next - Получить указатель на интерфейс следующего объекта в массиве
Синтаксис Automation:
LPDISPATCH Next();
Синтаксис COM:
LPENTITY Next();
Возвращаемое значение:
- указатель на интерфейс ksEntity или IEntity.
Prev - Получить указатель на интерфейс предыдущего объекта в массиве
Синтаксис Automation:
LPDISPATCH Prev();
Синтаксис COM:
LPENTITY Prev();
Возвращаемое значение:
- указатель на интерфейс ksEntity или IEntity.
Refresh - Обновить массив интерфейсов объектов трехмерной модели (осей, плоскостей и т.п.)
Синтаксис Automation:
BOOL Refresh();
Синтаксис COM:
BOOL Refresh();
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
Примечание: После вызова данной функции возникает полное соответствие массива в памяти с массивом точек ребра (поверхности) и удаляются все предыдущие изменения в массиве.
SelectByPoint - Исключить из массива все объекты, не содержащие точку с заданными координатами
Синтаксис Automation:
BOOL SelectByPoint (double x,
double y,
double z);
Синтаксис COM:
BOOL SelectByPoint (double x,
double y,
double z);
Входные параметры:
x, y, z - координаты точки,
Возвращаемое значение:
TRUE - в случае успешного завершения.
Примечание: После выполнения этой функции в массиве останутся только те объекты, которые содержат указанную точку (проходят через нее). Данная функция временно не работает для формообразующих элементов (элементов выдавливания, вращения, по сечениям).
SetByIndex - Заменить объект с указанным индексом в массиве на присланный объект
Синтаксис Automation:
BOOL SetByIndex (LPDISPATCH entity,
long index);
Синтаксис COM:
BOOL SetByIndex (LPENTITY entity,
long index);
Входные параметры:
entity - указатель на интерфейс присоединяемого элемента ksEntity или IEntity,
index - индекс элемента в массиве.
Возвращаемое значение:
TRUE - в случае успешного завершения.