---
title: "Интерфейс IMathSurface3D"
type: interface
api: [api7]
domain: [3d]
tags: [interface, api7, 3d, imathsurface3d]
sources:
  - imathsurface3d.html
---

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


## Интерфейс IMathSurface3D

Интерфейс математической поверхности в трехмерном пространстве.
Иерархия:
IDispatch
IKompasAPIObject
IMathSurface3D


## BaseSurface3DType - Тип базовой поверхности

Тип данных: из перечисления ksMathSurface3DTypeEnum
Синтаксис Automation:
```
BaseSurface3DType = Object.BaseSurface3DType    Получить свойство (* )
BaseSurface3DType = Object.GetBaseSurface3DType()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_BaseSurface3DType( &BaseSurface3DType )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## BoundaryCount - Получить количество границ

Тип данных: long
Синтаксис Automation:
```
BoundaryCount = Object.BoundaryCount    Получить свойство (* )
BoundaryCount = Object.GetBoundaryCount()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_BoundaryCount( &BoundaryCount )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## ClosedU - Получить замкнутость кривой по U

Тип данных: BOOL
Синтаксис Automation:
```
ClosedU = Object.ClosedU    Получить свойство (* )
ClosedU = Object.GetClosedU()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ClosedU( &ClosedU )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## ClosedV - Получить замкнутость кривой по V

Тип данных: BOOL
Синтаксис Automation:
```
ClosedV= Object.ClosedV    Получить свойство (* )
ClosedV = Object.GetClosedV()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ClosedV( &ClosedV)    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## CurveIntersection - Расчет пересечений c кривой

Синтаксис Automation:
```
BOOL CurveIntersection( IMathCurve3D * Curve, BOOL ExtensionSurface, BOOL ExtensionCurve, VARIANT * Points );
```
Синтаксис COM:
```
HRESULT CurveIntersection( IMathCurve3D * Curve, BOOL ExtensionSurface, BOOL ExtensionCurve, VARIANT * Points, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
Curve    - указатель на кривую IMathCurve3D,
ExtensionSurface    - учитывать продолжение поверхности,
ExtensionCurve    - учитывать продолжение кривой.
Выходные параметры:
Points    - координаты точек пересечений.
Версия КОМПАС v23
```


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

Синтаксис Automation:
```
double GetArea( ksLengthUnitsEnum BitVector );
```
Синтаксис COM:
```
HRESULT GetArea( ksLengthUnitsEnum BitVector, double * Result ) ;
Возвращаемое значение:
- площадь поверхности.
Входные параметры:
BitVector    - единицы измерения в интервале [ST_MIX_MM..ST_MIX_M].
```


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

Синтаксис Automation:
```
double GetAreaEx( ksLengthUnitsEnum Unit, double AngleTolerance );
```
Синтаксис COM:
```
HRESULT GetAreaEx( ksLengthUnitsEnum Unit, double AngleTolerance, double * Result );
Входные параметры:
Unit    - единицы измерения длины из перечисления ksLengthUnitsEnum,
AngleTolerance    - ограничение углового отклонения ( в радианах) при аппроксимации оболочки треугольными пластинами.
Версия Компас v21
```


## GetBoundaryUVNurbs - Получить параметры границы поверхности в UV NURBS-представлении

Синтаксис Automation:
```
BOOL GetBoundaryUVNurbs( BOOL UV, BOOL Closed, long LoopIndex, long EdgeIndex,
long * Degree, VARIANT * Points, VARIANT * Weights, VARIANT * Knots, double *
TMin, double * TMax );
```
Синтаксис COM:
```
HRESULT GetBoundaryUVNurbs( BOOL UV, BOOL Closed, long LoopIndex, long EdgeIndex,
long * Degree, VARIANT * Points, VARIANT * Weights, VARIANT * Knots, double *
TMin, double * TMax, BOOL * Result ) ;
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
UV    - TRUE - получить параметры границы поверхности в UV- параметрическом представлении исходной поверхности, - FALSE - получить параметры границы поверхности в 3D координатах,
Closed    - TRUE - сомкнуть, если граница разомкнутая, - FALSE - разомкнуть, если граница замкнутая,
LoopIndex    - индекс цикла,
EdgeIndex    - индекс ребра в цикле (совпадает с индексом ребра в коллекции ориентированных ребер).
Выходные параметры:
Degree    - порядок NURBS (степень полинома + 1), от 3 до 10,
Points    - массив параметров UV или координат вершин - массив SafeArray вещественных чисел VT_ARRAY    VT_R8,
Weights    - веса точек - массив SafeArray вещественных чисел VT_ARRAY    VT_R8,
Knots    - узлы точек - массив SafeArray вещественных чисел VT_ARRAY    VT_R8,
TMin, TMax    - минимальный и максимальный параметры.
В англоязычной специализированной литературе, документациях и различных API для систем автоматизированного проектирования (САПР) можно встретить использование термина degree для обозначения степени сплайна, а термина order — для обозначения порядка сплайна. Соответственно, order = degree + 1. Обратите внимание на то, что в интерфейсах КОМПАС-3D API термин degree используется для обозначения порядка сплайна (степень + 1).
```
Примечание:
1. Если признак UV равен TRUE, то в массиве points возвращаются параметры UV для Nurbs-представления границы. Параметры в массиве лежат в следующей последовательности:
u0, v0, u1, v1, ... ui, vi.
2. Если признак UV равен FALSE, то в массиве points возвращаются координаты вершин Nurbs-представления границы. Координаты точек в полученном массиве лежат в следующей последовательности:
x0, y0, z0, x1, y1, z1, ...xi, yi, zi.
3. Если индекс ребра равен -1, формируется Nurbs-представление контура границы.
4. Если индекс >= 0 то формируется Nurbs-представление ребра, входящего в цикл, параметр unclamped при этом игнорируется.


## GetConeParam - Получить параметры конической поверхности

Синтаксис Automation:
```
BOOL GetConeParam( double * Height, double * Angle, double * Radius );
```
Синтаксис COM:
```
HRESULT GetConeParam( double * Height, double * Angle, double * Radius, BOOL * Result ) ;
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Выходные параметры:
Height    - высота,
Angle    - угол (в радианах),
Radius    - радиус.
Версия КОМПАС v22
```


## GetDerivativeU - Получить первую производную по U

Синтаксис Automation:
```
BOOL GetDerivativeU( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeU( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result ) ;
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - первая производная по U.
```


## GetDerivativeUU - Получить вторую производную по UU

Синтаксис Automation:
```
BOOL GetDerivativeUU( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeUU( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - вторая производная по UU.
```


## GetDerivativeUUU - Получить третью производную по UUU

Синтаксис Automation:
```
BOOL GetDerivativeUUU( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeUUU( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - третья производная по UUU.
```


## GetDerivativeUUV - Получить третью производную по UUV

Синтаксис Automation:
```
BOOL GetDerivativeUUV( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeUUV( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - третья производная по UUV.
```


## GetDerivativeUV - Получить вторую производную по UV

Синтаксис Automation:
```
BOOL GetDerivativeUV( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeUV( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - вторая производная по UV.
```


## GetDerivativeUVV - Получить третью производнуюпо UVV

Синтаксис Automation:
```
BOOL GetDerivativeUVV( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeUVV( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - третья производная по UVV.
```


## GetDerivativeV - Получить вторую производную по V

Синтаксис Automation:
```
BOOL GetDerivativeV( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeV( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - первая производная по V.
```


## GetDerivativeVV - Получить вторую производную по VV

Синтаксис Automation:
```
BOOL GetDerivativeVV( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeVV( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - вторая производная по VV.
```


## GetDerivativeVVV - Получить третью производнуюпо VVV

Синтаксис Automation:
```
BOOL GetDerivativeVVV( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetDerivativeVVV( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - третья производная по VVV.
```


## GetDistanceToPoint - Функция возвращает расстояние между точкой и проекцией точки на грань

Синтаксис Automation:
```
double GetDistanceToPoint( double X, double Y, double Z );
```
Синтаксис COM:
```
HRESULT GetDistanceToPoint( double X, double Y, double Z, double * Result );
Возвращаемое значение:
- Расстояние до точки.
Входные параметры:
X, Y, Z    - координаты точки в пространстве .
КOMPAS v24
```


## GetEdgesCount - Получить количество ребер в границе

Синтаксис Automation:
```
long GetEdgesCount( long LoopIndex );
```
Синтаксис COM:
```
HRESULT GetEdgesCount( long LoopIndex, long * Result );
Возвращаемое значение:
- количество ребер в границе.
Выходные параметры:
LoopIndex    - индекс границы.
```


## GetGabarit - Получить габарит

Синтаксис Automation:
```
BOOL GetGabarit( double * X1, double * Y1, double * Z1, double * X2, double * Y2, double * Z2 );
```
Синтаксис COM:
```
HRESULT GetGabarit( double * X1, double * Y1, double * Z1, double * X2, double * Y2, double * Z2, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Выходные параметры:
X1, Y1, Z1, X2, Y2, Z2    - координаты вершин габаритного параллелепипеда.
```
Примечание:
Координаты вершин параллелепипеда возвращаются в системе координат компонента.


## GetMetricLength - Метрическая длина кривой

Синтаксис Automation:
```
double GetMetricLength( double StartParam, double EndParam );
```
Синтаксис COM:
```
HRESULT GetMetricLength( double StartParam, double EndParam, double * Result ;
Возвращаемое значение:
- длина кривой.
Входные параметры:
StartParam    - начальное значение параметра T в параметрическом представлении кривой,
EndParam    - конечное значение параметра T в параметрическом представлении кривой.
```


## GetNormal - Получить нормаль

Синтаксис Automation:
```
BOOL GetNormal( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetNormal( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - вектор нормали.
```


## GetNurbsParams - Получить параметры NURBS-представления поверхности

Синтаксис Automation:
```
BOOL GetNurbsParams( BOOL ClosedV, BOOL ClosedU, long * DegreeV, long * DegreeU, long * NPV, long * NPU, VARIANT * Points, VARIANT * Weights, VARIANT * KnotsV, VARIANT * KnotsU );
```
Синтаксис COM:
```
HRESULT GetNurbsParams( BOOL ClosedV, BOOL ClosedU, long * DegreeV, long * DegreeU, long * NPV, long * NPU, VARIANT * Points, VARIANT * Weights, VARIANT * KnotsV, VARIANT * KnotsU, BOOL * Result ) ;
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ClosedV    -TRUE - получение параметров для замкнутого по V представления, - FALSE - получение параметров для разомкнутого по V представления,
ClosedU    -TRUE - получение параметров для замкнутого по V представления, - FALSE - получение параметров для разомкнутого по V представления.
Выходные параметры:
DegreeV    - порядок NURBS по V (степень полинома + 1), от 3 до 10,
DegreeU    - порядок NURBS по U (степень полинома + 1), от 3 до 10
NPV    - количество точек по V,
NPU    - количество точек по U,
Points    - массив SafeArray точек VT_ARRAY    VT_R8,
Weights    - веса,
KnotsV    - массив SafeArray узлов точек по V VT_ARRAY    VT_R8,
KnotsU    - массив SafeArray узлов точек по U VT_ARRAY    VT_R8.
В англоязычной специализированной литературе, документациях и различных API для систем автоматизированного проектирования (САПР) можно встретить использование термина degree для обозначения степени сплайна, а термина order — для обозначения порядка сплайна. Соответственно, order = degree + 1. Обратите внимание на то, что в интерфейсах КОМПАС-3D API термин degree используется для обозначения порядка сплайна (степень + 1).
Версия КОМПАС v22
```


## GetPoint - Получить точку на поверхности

Синтаксис Automation:
```
BOOL GetPoint( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetPoint( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result ) ;
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - координаты точки на поверхности.
```


## GetTangentVectorU - Получить касательный вектор по U

Синтаксис Automation:
```
BOOL GetTangentVectorU( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetTangentVectorU( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result ) ;
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - касательный вектор по U.
```


## GetTangentVectorV - Получить касательный вектор по V

Синтаксис Automation:
```
BOOL GetTangentVectorV( double ParamU, double ParamV, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetTangentVectorV( double ParamU, double ParamV, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
ParamU, ParamV    - значения параметров U и V в параметрическом представлении поверхности.
Выходные параметры:
X, Y, Z    - касательный вектор по V.
```


## GetTorusParam - Получить параметры тора

Синтаксис Automation:
```
BOOL GetTorusParam( double * Radius, double * GeneratrixRadius );
```
Синтаксис COM:
```
RESULT GetTorusParam( double * Radius, double * GeneratrixRadius, BOOL * Result ) ;
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Выходные параметры:
Radius    - Радиус,
GeneratrixRadius    - Радиус образующей.
Версия КОМПАС v22
```


## IsCylinder - Является ли поверхность цилиндрической

Тип данных: BOOL
Синтаксис Automation:
```
IsCylinder = Object.IsCylinder    Получить свойство (* )
IsCylinder = Object.GetIsCylinder()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsCylinder( &IsCylinder )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## IsNurbsSurface - Является ли поверхность NURBS-поверхностью

Тип данных:BOOL
Синтаксис Automation:
```
IsNurbsSurface = Object.IsNurbsSurface    Получить свойство (* )
IsNurbsSurface = Object.GetIsNurbsSurface()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsNurbsSurface( &IsNurbsSurface )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## IsPlanar - Является ли поверхность плоской

Тип данных:BOOL
Синтаксис Automation:
```
IsPlanar = Object.IsPlanar    Получить свойство (* )
IsPlanar = Object.GetIsPlanar()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsPlanar( &IsPlanar )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


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

Тип данных:BOOL
Синтаксис Automation:
```
IsRevolved = Object.IsRevolved    Получить свойство (* )
IsRevolved = Object.GetIsRevolved()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsRevolved( &IsRevolved )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## IsSalient - Является ли поверхность выпуклой

Тип данных: из перечисления ksSurfaceSalientTypeEnum
Синтаксис Automation:
```
IsSalient = Object.IsSalient    Получить свойство (* )
IsSalient = Object.GetIsSalient()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsSalient( &IsSalient )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## IsSphere - Является ли поверхность сферической

Тип данных: BOOL
Синтаксис Automation:
```
IsSphere = Object.IsSphere    Получить свойство (* )
IsSphere = Object.GetIsSphere()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsSphere( &IsSphere )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


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

Тип данных:BOOL
Синтаксис Automation:
```
IsSwept = Object.IsSwept    Получить свойство (* )
IsSwept = Object.GetIsSwept()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsSwept( &IsSwept )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## IsTorus - Является ли поверхность тором

Тип данных: BOOL
Синтаксис Automation:
```
IsTorus = Object.IsTorus    Получить свойство (* )
IsTorus = Object.GetIsTorus()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_IsTorus( &IsTorus )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## NearDirectPointProjection - Проекция точки на кривую

Синтаксис Automation:
```
BOOL NearDirectPointProjection( double X, double Y, double Z, double VX, double VY, double VZ, BOOL Extended, double * U, double * V );
```
Синтаксис COM:
```
HRESULT NearDirectPointProjection( double X, double Y, double Z, double VX, double VY, double VZ, BOOL Extended, double * U, double * V, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
Входные параметры:
X, Y, Z    - координаты точки,
VX, VY, VZ    - направление вектора,
Extended    - TRUE - учитывать продолжение.
Выходные параметры:
U, V    - параметрические координаты точки на поверхности.
Версия: Компас v20
```


## NearPointProjection - Получить ближайшую проекцию точки на поверхность

Синтаксис Automation:
```
BOOL NearPointProjection( double X, double Y, double Z, double * ParamU, double * ParamV, BOOL Ext );
```
Синтаксис COM:
```
HRESULT NearPointProjection( double X, double Y, double Z, double * ParamU, double * ParamV, BOOL Ext, BOOL * Result ) ;
Возвращаемое значение:
TRUE    - если проекция точки попала на саму поверхность или если ext равен TRUЕ,
FALSE    - если проекция точки не попала на саму поверхность.
Входные параметры:
X, Y, Z    - координаты исходной пространственной точки,
Ext    - если проекция точки вне поверхности; - TRUE проецировать на продолжение поверхности, - FALSE найти ближайшую граничную точку поверхности.
Выходные параметры:
ParamU, ParamV    - параметрические координаты точки на поверхности.
```


## ParamUMax - Получить значение параметра U конечное

Тип данных: double
Синтаксис Automation:
```
ParamUMax = Object.ParamUMax    Получить свойство (* )
ParamUMax = Object.GetParamUMax()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ParamUMax( &ParamUMax )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## ParamUMin - Получить значение параметра U начальное

Тип данных: double
Синтаксис Automation:
```
ParamUMin = Object.ParamUMin    Получить свойство (* )
ParamUMin = Object.GetParamUMin()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ParamUMin( &ParamUMin )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## ParamVMax - Получить значение параметра V конечное

Тип данных: double
Синтаксис Automation:
```
ParamVMax = Object.ParamVMax    Получить свойство (* )
ParamVMax = Object.GetParamVMax()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ParamVMax( &ParamVMax )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## ParamVMin - Получить значение параметра V начальное

Тип данных: double
Синтаксис Automation:
```
ParamVMin = Object.ParamVMin    Получить свойство (* )
ParamVMin = Object.GetParamVMin()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_ParamVMin( &ParamVMin )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.


## Placement - Интерфейс локальной системы координат (положение объекта)

Тип данных: Указатель на интерфейс IPlacement3D
Синтаксис Automation:
```
Placement = Object.Placement    Получить свойство (* )
Placement = Object.GetPlacement()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Placement( &Placement )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## PointProjection - Проекция точки на поверхность

Синтаксис Automation :
VARIANT PointProjection( double X, double Y, double Z, double VX, double VY, double VZ, BOOL Extended );
Синтаксис COM:
```
HRESULT PointProjection( double X, double Y, double Z, double VX, double VY, double VZ, BOOL Extended, VARIANT * Result );
Возвращаемое значение:
Массив Safearray VT_ARRAY    VT_R8 параметрических координат точек поверхности в последовательности U1, V1, U2, V2....
Входные параметры:
X, Y, Z    - координаты точки,
VX, VY, VZ    - направление вектора,
Extended    - TRUE - учитывать продолжение.
Версия: Компас v20
```


## Radius - Радиус поверхности

Тип данных: double
Синтаксис Automation:
```
Radius = Object.Radius    Получить свойство (* )
Radius = Object.GetRadius()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Radius( &Radius )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
Версия КОМПАС v22


## Surface3DType - Тип поверхности

Тип данных: из перечисления ksMathSurface3DTypeEnum
Синтаксис Automation:
```
Surface3DType = Object.Surface3DType    Получить свойство (* )
Surface3DType = Object.GetSurface3DType()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Surface3DType( &Surface3DType )    Получить свойство
```
Примечание:
Свойство доступно только для чтения.
