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

21 KiB

title, type, api, tags, sources
title type api tags sources
Интерфейс IConicSurface interface
api7
interface
api7
iconicsurface
iconicsurface.html

*API интерфейсов. Версия 7 > Документ 3D  > Поверхности  > Интерфейс ISurfaceContainer  > ISurfaceContainer - свойства *

Интерфейс IConicSurface

Интерфейс поверхности конического сечения. Иерархия: IDispatch IKompasAPIObject IModelObject IConicSurface Примечание: Интерфейс можно получить, используя свойство IConicSurfaces::ConicSurface и метод IConicSurfaces::Add. Версия КОМПАС v22

ApexCurve - Вершинная кривая

Тип данных: VARIANT Синтаксис Automation:

ApexCurve = Object.ApexCurve    Получить свойство (* )
Object.ApexCurve = ApexCurve    Установить свойство (* )
ApexCurve = Object.GetApexCurve()    Получить свойство (**)
Object.SetApexCurve( ApexCurve )    Установить свойство (**)

Синтаксис COM:

Object.get_ApexCurve( &ApexCurve )    Получить свойство
Object.put_ApexCurve( ApexCurve )    Установить свойство
КOMPAS v24

BuildingType - Способ построения треугольника

Тип данных: из перечисления ksConicSurfaceBuildingTypeEnum Синтаксис Automation:

BuildingType = Object.BuildingType    Получить свойство (* )
Object.BuildingType = BuildingType    Установить свойство (* )
BuildingType = Object.GetBuildingType()    Получить свойство (**)
Object.SetBuildingType( BuildingType )    Установить свойство (**)

Синтаксис COM:

Object.get_BuildingType( &BuildingType )    Получить свойство
Object.put_BuildingType( BuildingType )    Установить свойство

DirectionObjects1 - Первый список направляющих

Тип данных: VARIANT Синтаксис Automation:

DirectionObjects1 = Object.DirectionObjects1    Получить свойство (* )
Object.DirectionObjects1 = DirectionObjects1    Установить свойство (* )
DirectionObjects1 = Object.GetDirectionObjects1()    Получить свойство (**)
Object.SetDirectionObjects1( DirectionObjects1 )    Установить свойство (**)

Синтаксис COM:

Object.get_DirectionObjects1( &DirectionObjects1 )    Получить свойство
Object.put_DirectionObjects1( DirectionObjects1 )    Установить свойство

Примечание: Направляющие передаются в виде SAFEARRAY DISPATCH - VT_ARRAY | VT_DISPATCH.

DirectionObjects2 - Второй список направляющих

Тип данных: VARIANT Синтаксис Automation:

DirectionObjects2 = Object.DirectionObjects2    Получить свойство (* )
Object.DirectionObjects2 = DirectionObjects2    Установить свойство (* )
DirectionObjects2 = Object.GetDirectionObjects2()    Получить свойство (**)
Object.SetDirectionObjects2( DirectionObjects2 )    Установить свойство (**)

Синтаксис COM:

Object.get_DirectionObjects2( &DirectionObjects2 )    Получить свойство
Object.put_DirectionObjects2( DirectionObjects2 )    Установить свойство

Примечание: Направляющие передаются в виде SAFEARRAY DISPATCH - VT_ARRAY | VT_DISPATCH.

GetTrianglePoint - Получить точки треугольников, в которые вписаны начало и конец поверхности конического сечения

Синтаксис Automation:

BOOL GetTrianglePoint( BOOL BeginSide, ksConicSectionTrianglePointEnum PointIndex, double * X, double * Y, double * Z );

Синтаксис COM:

HRESULT GetTrianglePoint( BOOL BeginSide, ksConicSectionTrianglePointEnum PointIndex, double * X, double * Y, double * Z, BOOL * Result );
Входные параметры:
BeginSide    - TRUE - начальная сторона, - FALSE - конечная сторона,
PointIndex    - индекс точки из перечисления ksConicSectionTrianglePointEnum.
Выходные параметры:
X, Y, Z    - координаты точки,

Inverse - Сменить направление построения поверхности

Тип данных: BOOL Синтаксис Automation:

Inverse = Object.Inverse    Получить свойство (* )
Object.Inverse = Inverse    Установить свойство (* )
Inverse = Object.GetInverse()    Получить свойство (**)
Object.SetInverse( Inverse )    Установить свойство (**)

Синтаксис COM:

Object.get_Inverse( &Inverse )    Получить свойство
Object.put_Inverse( Inverse )    Установить свойство
(отсутствуют).

IsSelfIntersect - Проверять самопересечение

Тип данных: BOOL Синтаксис Automation:

IsSelfIntersect = Object.IsSelfIntersect    Получить свойство (* )
Object.IsSelfIntersect = IsSelfIntersect    Установить свойство (* )
IsSelfIntersect = Object.GetIsSelfIntersect()    Получить свойство (**)
Object.SetIsSelfIntersect( IsSelfIntersect )    Установить свойство (**)

Синтаксис COM:

Object.get_IsSelfIntersect( &IsSelfIntersect )    Получить свойство
Object.put_IsSelfIntersect( IsSelfIntersect )    Установить свойство
(отсутствуют).

MovementAxisLine - Осевая линия движения сечения

Тип данных: VARIANT Синтаксис Automation:

MovementAxisLine = Object.MovementAxisLine    Получить свойство (* )
Object.MovementAxisLine = MovementAxisLine    Установить свойство (* )
MovementAxisLine = Object.GetMovementAxisLine()    Получить свойство (**)
Object.SetMovementAxisLine( MovementAxisLine )    Установить свойство (**)

Синтаксис COM:

Object.get_MovementAxisLine( &MovementAxisLine )    Получить свойство
Object.put_MovementAxisLine( MovementAxisLine )    Установить свойство

Примечание: Набор кривых для осевой линии передаются в виде SAFEARRAY DISPATCH - VT_ARRAY | VT_DISPATCH. (отсутствуют).

MovementDirectionObject - Направляющий объект для движения сечения

Тип данных: Указатель на интерфейс IModelObject Синтаксис Automation:

MovementDirectionObject = Object.MovementDirectionObject    Получить свойство (* )
Object.MovementDirectionObject = MovementDirectionObject    Установить свойство (* )
MovementDirectionObject = Object.GetMovementDirectionObject()    Получить свойство (**)
Object.SetMovementDirectionObject( MovementDirectionObject )    Установить свойство (**)

Синтаксис COM:

Object.get_MovementDirectionObject( &MovementDirectionObject )    Получить свойство
Object.put_MovementDirectionObject( MovementDirectionObject )    Установить свойство
(отсутствуют).

MovementType - Движение сечения

Тип данных: из перечисления ksConicSurfaceMovementTypeEnum Синтаксис Automation:

MovementType = Object.MovementType    Получить свойство (* )
Object.MovementType = MovementType    Установить свойство (* )
MovementType = Object.GetMovementType()    Получить свойство (**)
Object.SetMovementType( MovementType )    Установить свойство (**)

Синтаксис COM:

Object.get_MovementType( &MovementType )    Получить свойство
Object.put_MovementType( MovementType )    Установить свойство
(отсутствуют).

MovementVector - Направляющий вектор для движения сечения

Тип данных: Указатель на интерфейс IVector3D Синтаксис Automation:

MovementVector = Object.MovementVector    Получить свойство (* )
MovementVector = Object.GetMovementVector()    Получить свойство (**)

Синтаксис COM:

Object.get_MovementVector( &MovementVector )    Получить свойство

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

SectionCurveCoefficient - Коэффициент

Тип данных: double Синтаксис Automation:

SectionCurveCoefficient = Object.SectionCurveCoefficient    Получить свойство (* )
Object.SectionCurveCoefficient = SectionCurveCoefficient    Установить свойство (* )
SectionCurveCoefficient = Object.GetSectionCurveCoefficient()    Получить свойство (**)
Object.SetSectionCurveCoefficient( SectionCurveCoefficient )    Установить свойство (**)

Синтаксис COM:

Object.get_SectionCurveCoefficient( &SectionCurveCoefficient )    Получить свойство
Object.put_SectionCurveCoefficient( SectionCurveCoefficient )    Установить свойство
Входные параметры:
ValueType    - Тип движения сечения из перечисления ksSideAngleTypeEnum.

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

SectionCurveFormType - Способ задания формы кривой конического сечения

Тип данных: из перечисления ksConicSurfaceSectionCurveFormEnum Синтаксис Automation:

SectionCurveFormType = Object.SectionCurveFormType    Получить свойство (* )
Object.SectionCurveFormType = SectionCurveFormType    Установить свойство (* )
SectionCurveFormType = Object.GetSectionCurveFormType()    Получить свойство (**)
Object.SetSectionCurveFormType( SectionCurveFormType )    Установить свойство (**)

Синтаксис COM:

Object.get_SectionCurveFormType( &SectionCurveFormType )    Получить свойство
Object.put_SectionCurveFormType( SectionCurveFormType )    Установить свойство

SectionCurveLawObject - Закон. Эскиз с кривой, определяющей функцию y=f(x) кривой сечения

Тип данных: Указатель на интерфейс IModelObject Синтаксис Automation:

SectionCurveLawObject = Object.SectionCurveLawObject    Получить свойство (* )
Object.SectionCurveLawObject = SectionCurveLawObject    Установить свойство (* )
SectionCurveLawObject = Object.GetSectionCurveLawObject()    Получить свойство (**)
Object.SetSectionCurveLawObject( SectionCurveLawObject )    Установить свойство (**)

Синтаксис COM:

Object.get_SectionCurveLawObject( &SectionCurveLawObject )    Получить свойство
Object.put_SectionCurveLawObject( SectionCurveLawObject )    Установить свойство

SectionCurveLawType - Тип функции для построения кривой конического сечения

Тип данных: из перечисления ksLawTypeEnum Синтаксис Automation:

SectionCurveLawType = Object.SectionCurveLawType    Получить свойство (* )
Object.SectionCurveLawType = SectionCurveLawType    Установить свойство (* )
SectionCurveLawType = Object.GetSectionCurveLawType()    Получить свойство (**)
Object.SetSectionCurveLawType( SectionCurveLawType )    Установить свойство (**)

Синтаксис COM:

Object.get_SectionCurveLawType( &SectionCurveLawType )    Получить свойство
Object.put_SectionCurveLawType( SectionCurveLawType )    Установить свойство

SectionCurveOnSurface - Кривая на поверхности для задания формы кривой сечения

Тип данных: VARIANT Синтаксис Automation:

SectionCurveOnSurface = Object.SectionCurveOnSurface    Получить свойство (* )
Object.SectionCurveOnSurface = SectionCurveOnSurface    Установить свойство (* )
SectionCurveOnSurface = Object.GetSectionCurveOnSurface()    Получить свойство (**)
Object.SetSectionCurveOnSurface( SectionCurveOnSurface )    Установить свойство (**)

Синтаксис COM:

Object.get_SectionCurveOnSurface( &SectionCurveOnSurface )    Получить свойство
Object.put_SectionCurveOnSurface( SectionCurveOnSurface )    Установить свойство

Примечание: Кривые передаются в виде SAFEARRAY DISPATCH - VT_ARRAY | VT_DISPATCH.

SectionCurveTangentSurface - Кривая на поверхности для задания формы кривой сечения

Тип данных: Указатель на интерфейс IModelObject Синтаксис Automation:

SectionCurveTangentSurface = Object.SectionCurveTangentSurface    Получить свойство (* )
Object.SectionCurveTangentSurface = SectionCurveTangentSurface    Установить свойство (* )
SectionCurveTangentSurface = Object.GetSectionCurveTangentSurface()    Получить свойство (**)
Object.SetSectionCurveTangentSurface( SectionCurveTangentSurface )    Установить свойство (**)

Синтаксис COM:

Object.get_SectionCurveTangentSurface( &SectionCurveTangentSurface )    Получить свойство
Object.put_SectionCurveTangentSurface( SectionCurveTangentSurface )    Установить свойство
(отсутствуют).

SideAngle - Значение угла для построения угла треугольника

Тип данных: double Синтаксис Automation:

SideAngle = Object.SideAngle( FirstSide, ValueType )    Получить свойство (* )
Object.SideAngle( FirstSide, ValueType ) = SideAngle    Установить свойство (* )
SideAngle = Object.GetSideAngle( FirstSide, ValueType )    Получить свойство (**)
Object.SetSideAngle( FirstSide, ValueType, SideAngle )    Установить свойство (**)

Синтаксис COM:

Object.get_SideAngle( FirstSide, ValueType, &SideAngle )    Получить свойство
Object.put_SideAngle( FirstSide, ValueType, SideAngle )    Установить свойство
Входные параметры:
BOOL FirstSide    - TRUE - первая сторона, FALSE - вторая сторона,
ValueType    - тип движения сечения из перечисления ksSideAngleTypeEnum.

SideAngleBuildingType - Условие построения

Тип данных: из перечисления ksConicSurfaceSideAngleBuildingTypeEnum Синтаксис Automation:

SideAngleBuildingType = Object.SideAngleBuildingType( FirstSide )    Получить свойство (* )
Object.SideAngleBuildingType( FirstSide ) = SideAngleBuildingType    Установить свойство (* )
SideAngleBuildingType = Object.GetSideAngleBuildingType( FirstSide )    Получить свойство (**)
Object.SetSideAngleBuildingType( FirstSide, SideAngleBuildingType )    Установить свойство (**)

Синтаксис COM:

Object.get_SideAngleBuildingType( FirstSide, &SideAngleBuildingType )    Получить свойство
Object.put_SideAngleBuildingType( FirstSide, SideAngleBuildingType )    Установить свойство
Входные параметры:
BOOL FirstSide    - TRUE - первая сторона, FALSE - вторая сторона.

SideAngleDirection - Направление угла для построения угла треугольника

Тип данных:BOOL Синтаксис Automation:

SideAngleDirection = Object.SideAngleDirection( FirstSide )    Получить свойство (* )
Object.SideAngleDirection( FirstSide ) = SideAngleDirection    Установить свойство (* )
SideAngleDirection = Object.GetSideAngleDirection( FirstSide )    Получить свойство (**)
Object.SetSideAngleDirection( FirstSide, SideAngleDirection )    Установить свойство (**)

Синтаксис COM:

Object.get_SideAngleDirection( FirstSide, &SideAngleDirection )    Получить свойство
Object.put_SideAngleDirection( FirstSide, SideAngleDirection )    Установить свойство
Входные параметры:
BOOL FirstSide    - TRUE - первая сторона, FALSE - вторая сторона.

SideAngleLawObject - Закон. Эскиз с кривой, определяющей функцию y=f(x) угла наклона боковой стороны треугольника сечения

Тип данных: Указатель на интерфейс IModelObject Синтаксис Automation:

SideAngleLawObject = Object.SideAngleLawObject( FirstSide )    Получить свойство (* )
Object.SideAngleLawObject( FirstSide ) = SideAngleLawObject    Установить свойство (* )
SideAngleLawObject = Object.GetSideAngleLawObject( FirstSide )    Получить свойство (**)
Object.SetSideAngleLawObject( FirstSide, SideAngleLawObject )    Установить свойство (**)

Синтаксис COM:

Object.get_SideAngleLawObject( FirstSide, &SideAngleLawObject )    Получить свойство
Object.put_SideAngleLawObject( FirstSide, SideAngleLawObject )    Установить свойство
Входные параметры:
BOOL FirstSide    - TRUE - первая сторона, FALSE - вторая сторона.

SideAngleLawType - Тип функции для построения угла треугольника

Тип данных: из перечисления ksLawTypeEnum Синтаксис Automation:

SideAngleLawType = Object.SideAngleLawType( FirstSide )    Получить свойство (* )
Object.SideAngleLawType( FirstSide ) = SideAngleLawType    Установить свойство (* )
SideAngleLawType = Object.GetSideAngleLawType( FirstSide )    Получить свойство (**)
Object.SetSideAngleLawType( FirstSide, SideAngleLawType )    Установить свойство (**)

Синтаксис COM:

Object.get_SideAngleLawType( FirstSide, &SideAngleLawType )    Получить свойство
Object.put_SideAngleLawType( FirstSide, SideAngleLawType )    Установить свойство
Входные параметры:
BOOL FirstSide    - TRUE - первая сторона, FALSE - вторая сторона.

SideBuildingType - Способ построения стороны в треугольнике

Тип данных: из перечисления ksConicSurfaceSideBuildingTypeEnum Синтаксис Automation:

SideBuildingType = Object.SideBuildingType( FirstSide )    Получить свойство (* )
Object.SideBuildingType( FirstSide ) = SideBuildingType    Установить свойство (* )
SideBuildingType = Object.GetSideBuildingType( FirstSide )    Получить свойство (**)
Object.SetSideBuildingType( FirstSide, SideBuildingType )    Установить свойство (**)

Синтаксис COM:

Object.get_SideBuildingType( FirstSide, &SideBuildingType )    Получить свойство
Object.put_SideBuildingType( FirstSide, SideBuildingType )    Установить свойство
Входные параметры:
BOOL FirstSide    - TRUE - первая сторона, FALSE - вторая сторона.
(отсутствуют).

SideFaces - Список направляющих поверхностей стороны треугольника

Тип данных: VARIANT Синтаксис Automation:

SideFaces = Object.SideFaces( FirstSide )    Получить свойство (* )
Object.SideFaces( FirstSide ) = SideFaces    Установить свойство (* )
SideFaces = Object.GetSideFaces( FirstSide )    Получить свойство (**)
Object.SetSideFaces( FirstSide, SideFaces )    Установить свойство (**)

Синтаксис COM:

Object.get_SideFaces( FirstSide, &SideFaces )    Получить свойство
Object.put_SideFaces( FirstSide, SideFaces )    Установить свойство
Входные параметры:
BOOL FirstSide    - TRUE - первая сторона, FALSE - вторая сторона.

Примечание Поверхности передаются в виде SAFEARRAY DISPATCH - VT_ARRAY | VT_DISPATCH.