Files
kompas3d-mcp/docs/Kompas3D_SDK/interfaces/ksbodycollection.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

9.3 KiB

title, type, api, domain, tags, sources
title type api domain tags sources
Интерфейс массива трехмерных тел (Интерфейсы ksBodyCollection, IBodyCollection) interface
api7
2d
interface
api7
2d
ksbodycollection
ksbodycollection.html

*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D )  > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart  > Объект модели (Интерфейсы ksEntity и IEntity)  > Интерфейсы ksEntity и iEntity - Интерфейс элемента модели (оси, плоскости, формообразующего элемента) *

Интерфейс массива трехмерных тел (Интерфейсы ksBodyCollection, IBodyCollection)

Интерфейс массива трехмерных тел.

ksBodyCollection - интерфейс Automation
IBodyCollection - интерфейс COM
Трехмерное тело (Интерфейсы ksBody, Body)

Add - Добавить элемент в конец массива

Интерфейс.. Синтаксис Automation:

BOOL Add(LPDISPATCH body);

Синтаксис COM:

BOOL Add(LPBODY body);
Входные параметры:
body    - указатель на интерфейс ksBody или IBody добавляемого объекта.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Указатель на интерфейс добавляемого объекта body не должен быть равен 0.

AddAt - Добавить объект с заданным индексом в массив

Интерфейс.. Синтаксис Automation:

BOOL AddAt(LPDISPATCH body, long index);

Синтаксис COM:

BOOL AddAt(LPBODY body, long index);
Входные параметры:
body    - указатель на интерфейс ksBody или IBody,
index    - индекс в массиве.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Указатель на интерфейс добавляемого объекта body не должен быть равен 0.

AddBefore - Добавить объект перед указанным объектом в массиве

Интерфейс.. Синтаксис Automation:

BOOL AddBefore(LPDISPATCH body, LPDISPATCH base);

Синтаксис COM:

BOOL AddBefore(LPBODY body, LPBODY base);
Входные параметры:
body    - указатель на интерфейс ksBody или IBody добавляемого объекта,
base    - указатель на интерфейс ksBody или IBody базового объекта.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Указатели на интерфейсы добавляемого и базового объекта body и base не должны быть равны 0.

Clear - Очистить массив

Интерфейс.. Синтаксис Automation:

BOOL Clear();

Синтаксис COM:

BOOL Clear();
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Объекты удаляются только из массива, в модель изменения не передаются.

DetachByBody - Удалить указанный объект из массива

Интерфейс.. Синтаксис Automation:

BOOL DetachByBody(LPDISPATCH body);

Синтаксис COM:

BOOL DetachByBody(LPBODY body);
Входные параметры:
body    - указатель на интерфейс ksBody или IBody.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Указатель на интерфейс удаляемого объекта body не должен быть равен 0.

DetachByIndex - Удалить объект из массива по индексу

Интерфейс.. Синтаксис Automation:

BOOL DetachByIndex(long index);

Синтаксис COM:

BOOL DetachByIndex(long index);
Входные параметры:
index    - индекс удаляемого объекта в массиве.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: Элемент массива из модели не удаляется.

FindIt - Получить индекс элемента в массиве

Интерфейс.. Синтаксис Automation:

long FindIt (LPDISPATCH entity);
Возвращаемое значение:
индекс элемента    - если элемент найден в массиве,
-1    - если элемент не найден.

Синтаксис COM:

unsigned long FindIt (LPBODY entity );
Возвращаемое значение:
индекс элемента    - если элемент найден в массиве,
SYS_MAX_UINT    - если элемент не найден.
Входные параметры:
entity    - указатель на интерфейс компонента ksBody или IBody.

First - Получить указатель на интерфейс первого объекта в массиве

Интерфейс.. Синтаксис Automation:

LPDISPATCH First();

Синтаксис COM:

LPBODY First();
Возвращаемое значение:
- указатель на интерфейс ksBody или IBody.

GetByIndex - Получить указатель на интерфейс объекта в массиве по индексу

Интерфейс.. Синтаксис Automation:

LPDISPATCH GetByIndex (long index);

Синтаксис COM:

LPBODY GetByIndex (long index);
Входной параметр:
index    - номер объекта в массиве.
Возвращаемое значение:
- указатель на интерфейс ksBody или IBody.

GetCount - Получить количество элементов в массиве

Интерфейс.. Синтаксис Automation:

long GetCount();

Синтаксис COM:

long GetCount();
Возвращаемое значение:
- количество элементов массива.

Last - Получить указатель на интерфейс последнего объекта в массиве

Интерфейс.. Синтаксис Automation:

LPDISPATCH Last();

Синтаксис COM:

LPBODY Last();
Возвращаемое значение:
- указатель на интерфейс ksBody или IBody.

Next - Получить указатель на интерфейс следующего объекта в массиве

Интерфейс.. Синтаксис Automation:

LPDISPATCH Next();

Синтаксис COM:

LPBODY Next();
Возвращаемое значение:
- указатель на интерфейс ksBody или IBody.

Prev - Получить указатель на интерфейс предыдущего объекта в массиве

Интерфейс.. Синтаксис Automation:

LPDISPATCH Prev();

Синтаксис COM:

LPBODY Prev();
Возвращаемое значение:
- указатель на интерфейс компонента ksBody или IBody.

Refresh - Обновить массив

Синтаксис Automation:

BOOL Refresh();

Синтаксис COM:

BOOL Refresh();
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.

Примечание: После вызова данной функции возникает полное соответствие массива с массивом тел трехмерной детали или сборки и удаляются все предыдущие изменения в массиве.

SetByIndex - Заменить объект с указанным индексом в массиве на присланный объект

Интерфейс.. Синтаксис Automation:

BOOL SetByIndex(LPDISPATCH body, long index);

Синтаксис COM:

BOOL SetByIndex(LPBODY body, long index);
Входные параметры:
body    - указатель на интерфейс ksBody или IBody присоединяемого объекта,
index    - индекс элемента в массиве.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.