---
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    - в случае неудачи.
```
Примечание:
После вызова данной функции возникает полное соответствие массива с массивом граней трехмерного тела и удаляются все предыдущие изменения в массиве.
