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

169 lines
5.9 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.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Массив граней (Интерфейсы ksFaceCollection, IFaceCollection)"
type: interface
api: [api7]
domain: [2d]
tags: [interface, api7, 2d, ksfacecollection]
sources:
- ksfacecollection.html
---
*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D )  > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart  > Объект модели (Интерфейсы ksEntity и IEntity)  > Интерфейсы ksEntity и iEntity - Интерфейс элемента модели (оси, плоскости, формообразующего элемента)  > Интерфейсы дополнительных элементов *
## Массив граней (Интерфейсы ksFaceCollection, IFaceCollection)
Интерфейс массива граней.
| ksFaceCollection | - интерфейс Automation |
| --- | --- |
| IFaceCollection | - интерфейс COM |
Примечание:
Данный интерфейс может быть получен следующими способами:
•от интерфейса свойств грани ksFaceDefinition, IFaceDefinition с помощью метода ksFaceDefinition::ConnectedFaceCollection,
•от интерфейса тела ksBody, IBody с помощью методов ksBody::FaceCollection, IBody::FaceCollection.
## FindIt - Получить индекс элемента в массиве
Синтаксис Automation:
```
long FindIt (LPDISPATCH entity);
Возвращаемое значение:
индекс элемента - если элемент найден в массиве,
-1 - если элемент не найден.
```
Синтаксис COM:
```
unsigned long FindIt(LPFACEDEFINITION entity);
Возвращаемое значение:
индекс элемента - если элемент найден в массиве,
SYS_MAX_UINT - если элемент не найден.
Входные параметры:
entity - указатель на интерфейс компонента ksFaceDefinition или IFaceDefinition.
```
## First - Получить указатель на интерфейс первого объекта в массиве
Синтаксис Automation:
```
LPDISPATCH First();
```
Синтаксис COM:
```
LPFACEDEFINITION First();
Возвращаемое значение:
- указатель на интерфейс ksFaceDefinition или IFaceDefinition.
```
## GetByIndex - Получить указатель на интерфейс объекта в массиве по индексу
Синтаксис Automation:
```
LPDISPATCH GetByIndex (long index);
```
Синтаксис COM:
```
LPFACEDEFINITION GetByIndex (long index);
Входной параметр:
index - номер объекта в массиве.
Возвращаемое значение:
- указатель на интерфейс ksFaceDefinition или IFaceDefinition.
```
## GetByName - Получить указатель на интерфейс объекта в массиве по имени
Синтаксис Automation:
```
LPDISPATCH GetByName (BSTR name,
BOOL testFullName,
BOOL testIgnoreCase);
```
Синтаксис COM:
```
LPFACEDEFINITION GetByName (LPOLESTR name,
BOOL testFullName,
BOOL testIgnoreCase);
Входные параметры:
name - название грани,
testFullName - признак полного имени: TRUE - name - проверять по полному пути, FALSE - имя name может быть частью полного имени,
testIgnoreCase - признак игнорирования регистра символов: TRUE - игнорировать регистр, FALSE - учитывать регистр.
Возвращаемое значение:
- указатель на интерфейс ksFaceDefinition или IFaceDefinition.
```
## GetCount - Получить количество элементов в массиве
Синтаксис Automation:
```
long GetCount();
```
Синтаксис COM:
```
long GetCount();
Возвращаемое значение:
- количество элементов массива.
```
## Last - Получить указатель на интерфейс последнего объекта в массиве
Синтаксис Automation:
```
LPDISPATCH Last();
```
Синтаксис COM:
```
LPFACEDEFINITION Last();
Возвращаемое значение:
- указатель на интерфейс ksFaceDefinition или IFaceDefinition.
```
## Next - Получить указатель на интерфейс следующего объекта в массиве
Синтаксис Automation:
```
LPDISPATCH Next();
```
Синтаксис COM:
```
LPFACEDEFINITION Next();
Возвращаемое значение:
- указатель на интерфейс ksFaceDefinition или IFaceDefinition.
```
## Prev - Получить указатель на интерфейс предыдущего объекта в массиве
Синтаксис Automation:
```
LPDISPATCH Prev();
```
Синтаксис COM:
```
LPFACEDEFINITION Next();
Возвращаемое значение:
- указатель на интерфейс ksFaceDefinition или IFaceDefinition.
```
## Refresh - Обновить массив
Синтаксис Automation:
```
BOOL Refresh();
```
Синтаксис COM:
```
BOOL Refresh();
Возвращаемое значение:
TRUE - в случае успешного завершения,
FALSE - в случае неудачи.
```
Примечание:
После вызова данной функции возникает полное соответствие массива с массивом граней трехмерного тела и удаляются все предыдущие изменения в массиве.