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

468 lines
21 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: "Интерфейс IConicSurface"
type: interface
api: [api7]
tags: [interface, api7, iconicsurface]
sources:
- 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.