Files
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

8.8 KiB

title, type, api, domain, tags, sources
title type api domain tags sources
Массив компонентов сборки (Интерфейсы ksPartCollection и IPartCollection) interface
api7
3d
assembly
interface
api7
3d
assembly
kspartcollection
kspartcollection.html

*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D ) *

Массив компонентов сборки (Интерфейсы ksPartCollection и IPartCollection)

Интерфейс динамического массива компонентов сборки.

ksPartCollection - интерфейс Automation
IPartCollection - интерфейс COM
Примечание:
Данный интерфейс можно получить от интерфейса ksDocument3D или IDocument3D.

Add - Добавить компонент в массив

Синтаксис Automation:

BOOL Add (LPDISPATCH part);

Синтаксис COM:

BOOL Add (LPPART part);
Входной параметр:
part    - указатель на интерфейс компонента ksPart или IPart.
Возвращаемое значение:
TRUE    - в случае успешного завершения.

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

Синтаксис Automation:

BOOL AddAt (LPDISPATCH part,
long index);

Синтаксис COM:

BOOL AddAt (LPPART part,
unsigned long index);
Входные параметры:
part    - указатель на интерфейс компонента ksPart или IPart,
index    - индекс в массиве.
Возвращаемое значение:
TRUE    - в случае успешного завершения.

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

Синтаксис Automation:

BOOL AddBefore (LPDISPATCH entity,
LPDISPATCH base);

Синтаксис COM:

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

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

Синтаксис Automation:

BOOL Clear();

Синтаксис COM:

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

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

DetachByBody - отсоединить компонент от массива

Синтаксис Automation:

BOOL DetachByBody (LPDISPATCH part);

Синтаксис COM:

BOOL DetachByBody (LPPART part);
Входной параметр:
part    - указатель на интерфейс отсоединяемого компонента ksPart или IPart.
Возвращаемое значение:
TRUE    - в случае успешного завершения.

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

DetachByIndex - Отсоединить от массива компонент с указанным индексом

Синтаксис Automation:

BOOL DetachByIndex (long index);

Синтаксис COM:

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

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

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

Синтаксис Automation:

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

Синтаксис COM:

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

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

Синтаксис Automation:

LPDISPATCH First();

Синтаксис COM:

LPPART First();
Возвращаемое значение:
- указатель на интерфейс компонента ksPart или IPart.

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

Синтаксис Automation:

LPDISPATCH GetByIndex (long index);

Синтаксис COM:

LPPART GetByIndex (unsigned long index);
Входной параметр:
index    - индекс компонента в массиве.
Возвращаемое значение:
- указатель на интерфейс компонента ksPart или IPart.

GetByName - Получить указатель на интерфейс компонента по имени

Синтаксис Automation:

LPDISPATCH GetByName (BSTR name,
BOOL testFullName,
BOOL testIgnoreCase);

Синтаксис COM:

LPPART GetByName (LPOLESTR name,
BOOL testFullName,
BOOL testIgnoreCase);
Входные параметры:
name    - имя объекта,
testFullName    - признак полного имени (TRUE - полное имя),
testIgnoreCase    - признак учета регистра: TRUE - игнорировать регистр, FALSE - учитывать регистр.
Возвращаемое значение:
- указатель на интерфейс компонента ksPart или IPart.

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

Синтаксис Automation:

long GetCount();

Синтаксис COM:

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

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

Синтаксис Automation:

LPDISPATCH Last();

Синтаксис COM:

LPPART Last();
Возвращаемое значение:
- указатель на интерфейс компонента ksPart или IPart.

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

Синтаксис Automation:

LPDISPATCH Next();

Синтаксис COM:

LPPART Next();
Возвращаемое значение:
- указатель на интерфейс компонента ksPart или IPart.

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

Синтаксис Automation:

LPDISPATCH Prev();

Синтаксис COM:

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

Refresh - Обновить массив компонентов сборки

Синтаксис Automation:

BOOL Refresh();

Синтаксис COM:

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

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

SetByIndex - Заменить компонент в массиве по индексу

Синтаксис Automation:

BOOL SetByIndex (LPDISPATCH part,
long index);

Синтаксис COM:

BOOL SetByIndex (LPPART part,
unsigned long index);
Входные параметры:
part    - указатель на интерфейс компонента ksPart или IPart,
index    - индекс заменяемого компонента в массиве.
Возвращаемое значение:
TRUE    - в случае успешного завершения.