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

12 KiB

title, type, api, domain, tags, sources
title type api domain tags sources
Грань (Интерфейсы ksFaceDefinition, IFaceDefinition) interface
api7
2d
interface
api7
2d
ksfacedefinition
ksfacedefinition.html

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

Грань (Интерфейсы ksFaceDefinition, IFaceDefinition)

Интерфейс свойств грани.

ksFaceDefinition - интерфейс Automation
IFaceDefinition - интерфейс COM
Описание:
Грань - это объект топологии. Содержит информацию о геометрии (поверхность), информацию о связях с другими гранями (массив циклов) и признакj относительной ориентации нормали. Этот признак имеет значение TRUE, если он совпадает с направлением нормали математической поверхности.
Примечание:
Данный интерфейс может быть получен следующими способами:
•от интерфейса коллекции свойств грани ksFaceCollection, IFaceCollection,
•от интерфейса свойств ребра ksEdgeDefinition, IEdgeDefinition.
•используя метод интерфейса элемента модели ksEntity::GetDefinition или IEntity::GetDefinition.

ConnectedFaceCollection - Получить указатель на интерфейс массива граней, стыкующихся с данной гранью

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

LPDISPATCH ConnectedFaceCollection();

Синтаксис COM:

LPFACECOLLECTION ConnectedFaceCollection();
Возвращаемое значение:
- указатель на интерфейс ksFaceCollection или IFaceCollection.

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

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

LPDISPATCH EdgeCollection();

Синтаксис COM:

LPEDGECOLLECTION EdgeCollection();
Возвращаемое значение:
- указатель на интерфейс ksEdgeCollection или IEdgeCollection.

GetArea - Получить площадь грани

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

double GetArea (long bitVector );

Синтаксис COM:

double GetArea (unsigned long bitVector );
Входные параметры:
bitVector    - единицы измерения.
Возвращаемое значение:
площадь грани    - в случае успешного завершения.
0    - в случае неудачи.

GetAreaEx - Получить площадь грани (ST_MIX_MM..ST_MIX_M единицы измерения)

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

double GetAreaEx( long bitVector, double angleTolerance );

Синтаксис COM:

double GetAreaEx (unsigned long bitVector, double angleTolerance );
Входные параметры:
bitVector    - единицы измерения,
angleTolerance    - ограничение углового отклонения при аппроксимации оболочки треугольными пластинами.
Возвращаемое значение:
площадь грани    - в случае успешного завершения.
0    - в случае неудачи.
Версия Компас v21

GetCylinderParam - Получить параметры цилиндрической грани

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

BOOL GetCylinderParam (double* h,
double* r);

Синтаксис COM:

BOOL GetCylinderParam (double * h,
double * r);
Выходные параметры:
h    - высота цилиндра,
r    - радиус цилиндра.
Возвращаемое значение:
TRUE    - в случае успеха.

GetEntity - Получить указатель на интерфейс грани

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

LPDISPATCH GetEntity();

Синтаксис COM:

LPENTITY GetEntity();
Возвращаемое значение:
- указатель на интерфейс грани ksEntity или IEntity

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

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

LPDISPATCH GetNextFace();

Синтаксис COM:

LPFACEDEFINITION GetNextFace();
Возвращаемое значение:
- указатель на интерфейс ksFaceDefinition или IFaceDefinition.

GetOwnerEntity - Получить указатель на объект, породивший цилиндрическую грань

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

LPDISPATCH GetOwnerEntity();

Синтаксис COM:

LPENTITY GetOwnerEntity();
Возвращаемое значение:
- указатель на интерфейс объекта ksEntity или IEntity.

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

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

LPDISPATCH GetSurface();

Синтаксис COM:

LPSURFACE GetSurface();
Возвращаемое значение:
- указатель на интерфейс ksSurface или ISurface.

GetTessellation - Получить указатель на интерфейс триангуляции

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

LPDISPATCH GetTessellation();

Синтаксис COM:

LPTESSELLATION GetTessellation();
Возвращаемое значение:
- указатель на интерфейс ksTessellation или ITessellation.

IsCone - Определить, коническая ли грань

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

BOOL IsCone();

Синтаксис COM:

BOOL IsCone();
Возвращаемое значение:
TRUE    - грань коническая,
FALSE    - грань не коническая.

IsConnectedWith - Проверить, связаны ли грани

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

BOOL IsConnectedWith (LPDISPATCH other);

Синтаксис COM:

BOOL IsConnectedWith (LPFACEDEFINITION other);
Входные параметры:
- указатель на интерфейс ksFaceDefinition или IFaceDefinition другой грани.
Возвращаемое значение:
TRUE    - если грани связаны,
FALSE    - если грани не связаны.

IsCylinder - Определить, цилиндрическая ли грань

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

BOOL IsCylinder();

Синтаксис COM:

BOOL IsCylinder();
Возвращаемое значение:
TRUE    - грань цилиндрическая,
FALSE    - грань не цилиндрическая.

IsNurbsSurface - Определить, является ли грань NURBS поверхностью

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

BOOL IsNurbsSurface();

Синтаксис COM:

BOOL IsNurbsSurface();
Возвращаемое значение:
TRUE    - грань является NURBS поверхностью,
FALSE    - грань не является NURBS поверхностью.

IsPlanar - Определить, плоская ли грань

Синтаксис Automation:

BOOL IsPlanar();

Синтаксис COM:

BOOL IsPlanar();
Возвращаемое значение:
TRUE    - грань плоская,
FALSE    - грань не плоская.

IsRevolved - Определить, является ли грань поверхностью вращения

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

BOOL IsRevolved();

Синтаксис COM:

BOOL IsRevolved();
Возвращаемое значение:
TRUE    - грань является поверхностью вращения,
FALSE    - грань не является поверхностью вращения.

IsSphere - Определить, является ли грань сферической

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

BOOL IsSphere();

Синтаксис COM:

BOOL IsSphere();
Возвращаемое значение:
TRUE    - грань является сферической,
FALSE    - грань не является сферической.

IsSwept - Определить, задается ли грань поверхностью по траектории

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

BOOL IsSwept();

Синтаксис COM:

BOOL IsSwept();
Возвращаемое значение:
TRUE    - грань задается поверхностью по траектории,
FALSE    - грань не задается поверхностью по траектории.

IsTorus - Определить, является ли грань тором

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

BOOL IsTorus();

Синтаксис COM:

BOOL IsTorus();
Возвращаемое значение:
TRUE    - грань является тором,
FALSE    - грань не является тором.

IsValid - Получить индикатор доступности объекта

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

BOOL IsValid();

Синтаксис COM:

BOOL IsValid();
Возвращаемое значение:
TRUE    - объект доступен,
FALSE    - объект недоступен.

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

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

LPDISPATCH LoopCollection();

Синтаксис COM:

LPLOOPCOLLECTION LoopCollection();
Возвращаемое значение:
- указатель на интерфейс ksLoopCollection или ILoopCollection.

normalOrientation - Относительная ориентация (ориентация нормали грани относительно ориентации нормали поверхности)

Интерфейс.. Тип данных: BOOL Синтаксис Automation:

normalOrient = iFaceDefinition.normalOrientation    Получить свойство (* )
iFaceDefinition.GetNormalOrientation()    Получить свойство (**)
Возвращаемое значение:
TRUE    - направление нормали совпадает с направлением нормали математической поверхности,
FALSE    - направление нормали не совпадает с направлением нормали математической поверхности ksSurface.

Примечание: Свойство доступно только для чтения.