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

*API интерфейсов. Версия 7 > Документ 3D  > Вспомогательные объекты, 3D-кривые и элементы тела  > 3D-кривые и элементы тела  > Интерфейс IModelObjects  > IModelObjects - свойства *


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

Интерфейс cплайна.
Иерархия:
IKompasAPIObject
IModelObject
ISpline3D
ILocalCSObject
Примечание:
1. Интерфейс можно получить у коллекции сплайнов, используя свойство ISplines3D::Spline3D или метод ISplines3D::Add.
2. После задания параметров сплайна требуется вызвать метод IModelObject::Update.
3. С помощью метода IUnknown::QueryInterface у интерфейса можно получить интерфейс подчиненного объекта ЛСК ILocalCSObject.


## AddVertex - Создать новую вершину

Синтаксис Automation:
```
LPDISPATCH AddVertex( long Index );
```
Синтаксис COM:
```
HRESULT AddVertex( [in] long Index,
[out, retval] ICurveVertexParam ** Result);
Возвращаемое значение:
ICurveVertexParam    - указатель на интерфейс параметров вершины ломаной.
```


## BuildingType - Способ построения

Тип данных: из перечисления ksSplineBuildingTypeEnum
Синтаксис Automation:
```
BuildingType = Object.BuildingType    Получить свойство (* )
Object.BuildingType = BuildingType    Установить свойство (* )
BuildingType = Object.GetBuildingType()    Получить свойство (**)
Object.SetBuildingType( BuildingType )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_BuildingType( &BuildingType )    Получить свойство
Object.put_BuildingType( BuildingType )    Установить свойство
Версия КОМПАС v22
```


## CenterPointAssociationObject - Точка привязки центра кривизны

Тип данных: Указатель на интерфейс IModelObject.
Синтаксис Automation:
```
CenterPointAssociationObject = Object.CenterPointAssociationObject( PointIndex );    Получить свойство (* )
Object.CenterPointAssociationObject( PointIndex ) = CenterPointAssociationObject;    Установить свойство (* )
CenterPointAssociationObject = Object.GetCenterPointAssociationObject( PointIndex );    Получить свойство (**)
Object.SetCenterPointAssociationObject( PointIndex, CenterPointAssociationObject )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_CenterPointAssociationObject( PointIndex, &CenterPointAssociationObject )    Получить свойство
Object.put_CenterPointAssociationObject( PointIndex, CenterPointAssociationObject )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## CenterPointParams - Получение параметров точки центра кривизны

Тип данных: Указатель на интерфейс IKompasAPIObject.
Синтаксис Automation:
```
CenterPointParams = Object.CenterPointParams( PointIndex );    Получить свойство (* )
CenterPointParams = Object.GetCenterPointParams( PointIndex );    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_CenterPointParams( PointIndex, &CenterPointParams )    Получить свойство
Входные параметры:
long PointIndex    - индекс точки.
```
Примечание:
1. Свойство доступно только для чтения.
2. В зависимости от типа ISpline3D::CenterPointType, интерфейс параметров должен приводиться к одному из следующих вариантов:
•ksPDisplace - IPoint3DParamDisplace (интерфейс параметров пространственной точки, заданной по смещению от опорного объекта),
•ksPIntersect - IPoint3DParamIntersect (интерфейс параметров пространственной точки, заданной на пересечении опорных объектов),
•ksPCenter - IPoint3DParamCenter (интерфейс параметров пространственной точки, заданной в центре опорного объекта),
•ksPCurve - IPoint3DParamCurve (интерфейс параметров пространственной точки, заданной на кривой со смещением),
•ksPSurface - IPoint3DparamSurface (интерфейс параметров пространственной точки, заданной на поверхности),
•ksPProjection - IPoint3DParamProjection (интерфейс параметров пространственной точки, заданной проецированием).


## CenterPointType - Установить способ построения точки

Тип данных: Значение из перечисления ksPoint3DTypeEnum.
Синтаксис Automation:
```
CenterPointType = Object.CenterPointType( PointIndex );    Получить свойство (* )
Object.CenterPointType( PointIndex ) = CenterPointType;    Установить свойство (* )
CenterPointType = Object.GetCenterPointType( PointIndex );    Получить свойство (**)
Object.SetCenterPointType( PointIndex, CenterPointType )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_CenterPointType( PointIndex, &CenterPointType )    Получить свойство
Object.put_CenterPointType( PointIndex, CenterPointType )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## ClearTangentParameters - Удалить параметры управления во всех точках

Синтаксис Automation:
```
BOOL ClearTangentParameters();
```
Синтаксис COM:
```
HRESULT ClearTangentParameters( BOOL * Result );
Возвращаемое значение:
TRUE    - в случае удачного завершения,
FALSE    - в случае неудачи.
```


## Closed - Замкнутость

Тип данных: BOOL
Значения свойства:
| TRUE | - сплайн замкнутый, |
| --- | --- |
| FALSE | - сплайн разомкнутый. |
Синтаксис Automation:
```
Closed = iObject.Closed;    Получить свойство (* )
iObject.Closed = Closed;    Установить свойство (* )
Closed = iObject.GetClosed();    Получить свойство (**)
iObject.SetClosed(Closed);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_Closed (&Closed)    Получить свойство
iObject->put_Closed (Closed)    Установить свойство
Примечание.
Свойство позволяет получить/установить разомкнутый или замкнутый сплайн.
```


## ConstraintLimitObject - Граница

Тип данных: Указатель на интерфейс IModelObject.
Синтаксис Automation:
```
ConstraintLimitObject = Object.ConstraintLimitObject( PointIndex );    Получить свойство (* )
Object.ConstraintLimitObject( PointIndex ) = ConstraintLimitObject;    Установить свойство (* )
ConstraintLimitObject = Object.GetConstraintLimitObject( PointIndex );    Получить свойство (**)
Object.SetConstraintLimitObject( PointIndex, ConstraintLimitObject );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ConstraintLimitObject( PointIndex, &ConstraintLimitObject )    Получить свойство
Object.put_ConstraintLimitObject( PointIndex, ConstraintLimitObject )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## ConstraintObject - Объект сопряжения

Тип данных: Указатель на интерфейс IModelObject.
Синтаксис Automation:
```
ConstraintObject = Object.ConstraintObject( PointIndex );    Получить свойство (* )
Object.ConstraintObject( PointIndex ) = ConstraintObject;    Установить свойство (* )
ConstraintObject = Object.GetConstraintObject( PointIndex );    Получить свойство (**)
Object.SetConstraintObject( PointIndex, ConstraintObject );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ConstraintObject( PointIndex, &ConstraintObject )    Получить свойство
Object.put_ConstraintObject( PointIndex, ConstraintObject )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## ConstraintReverse - Противоположное направление

Тип данных: BOOL
Синтаксис Automation:
```
ConstraintReverse = Object.ConstraintReverse( PointIndex );    Получить свойство (* )
Object.ConstraintReverse( PointIndex ) = ConstraintReverse;    Установить свойство (* )
ConstraintReverse = Object.GetConstraintReverse( PointIndex );    Получить свойство (**)
Object.SetConstraintReverse( PointIndex, ConstraintReverse );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ConstraintReverse( PointIndex, &ConstraintReverse )    Получить свойство
Object.put_ConstraintReverse( PointIndex, ConstraintReverse )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## ConstraintType - Тип сопряжения в заданной вершине. Управление кривизной

Тип данных: Значение из перечисления ksNurbsByPointsPointConstraintsEnum.
Синтаксис Automation:
```
ConstraintType = Object.ConstraintType( PointIndex );    Получить свойство (* )
Object.ConstraintType( PointIndex ) = ConstraintType;    Установить свойство (* )
ConstraintType = Object.GetConstraintType( PointIndex );    Получить свойство (**)
Object.SetConstraintType( PointIndex, ConstraintType );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_ConstraintType( PointIndex, &ConstraintType )    Получить свойство
Object.put_ConstraintType( PointIndex, ConstraintType )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## Curvature - Величина кривизны в указанной точке

Тип данных: double
Синтаксис Automation:
```
Curvature = Object.Curvature( PointIndex );    Получить свойство (* )
Object.Curvature( PointIndex ) = Curvature;    Установить свойство (* )
Curvature = Object.GetCurvature( PointIndex );    Получить свойство (**)
Object.SetCurvature( PointIndex, Curvature );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Curvature( PointIndex, &Curvature )    Получить свойство
Object.put_Curvature( PointIndex, Curvature )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## CurvatureRadius - Радиус кривизны

Тип данных: double
Синтаксис Automation:
```
CurvatureRadius = Object.CurvatureRadius( PointIndex );    Получить свойство (* )
Object.CurvatureRadius( PointIndex ) = CurvatureRadius;    Установить свойство (* )
CurvatureRadius = Object.GetCurvatureRadius( PointIndex );    Получить свойство (**)
Object.SetCurvatureRadius( PointIndex, CurvatureRadius );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_CurvatureRadius( PointIndex, &CurvatureRadius )    Получить свойство
Object.put_CurvatureRadius( PointIndex, CurvatureRadius )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## DeleteCenterPointParams - Удалить параметры для заданной точки

Синтаксис Automation:
```
BOOL DeleteCenterPointParams( long PointIndex );
```
Синтаксис COM:
```
HRESULT DeleteCenterPointParams( long PointIndex, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае удачного завершения.
Входные параметры:
PointIndex    - индекс точки.
```


## DeleteVertex - Удалить вершину с указанным индексом

Синтаксис Automation:
```
BOOL DeleteVertex( long Index );
```
Синтаксис COM:
```
HRESULT DeleteVertex([in] long Index,
[out, retval] VARIANT_BOOL * Result );
Входные параметры:
Index    - индекс вершины.
Возвращаемое значение:
TRUE    - в случае удачного завершения,
FALSE    - в случае неудачи.
```


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

Тип данных: Указатель на интерфейс IVector3D.
Синтаксис Automation:
```
DirectionVector = Object.DirectionVector( PointIndex, VectorIndex, PVal );    Получить свойство (* )
DirectionVector = Object.GetDirectionVector( PointIndex, VectorIndex, PVal );    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_DirectionVector( PointIndex, VectorIndex, PVal, &DirectionVector )    Получить свойство
Входные параметры:
long PointIndex    - индекс точки.
VectorIndex    - cпособ создания сопряжения в заданной вершине сплайна из перечисления ksTransitionVectorIndexEnum.
```
Примечание:
Свойство доступно только для чтения.


## Flush - Очистить массив вершин

Синтаксис Automation:
```
BOOL Flush();
```
Синтаксис COM:
```
HRESULT Flush([out, retval] VARIANT_BOOL * Result);
Возвращаемое значение:
TRUE    - в случае удачного завершения,
FALSE    - в случае неудачи.
```


## GetCenterPoint - Угол вектора производной в указанной точке

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


## GetVector - Получить направление касательного вектора (в сопряжении)

Синтаксис Automation:
```
BOOL GetVector( long PointIndex, ksTransitionVectorIndexEnum VectorIndex, double * X, double * Y, double * Z );
```
Синтаксис COM:
```
HRESULT GetVector( long PointIndex, ksTransitionVectorIndexEnum VectorIndex, double * X, double * Y, double * Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае удачного завершения.
Входные параметры:
PointIndex    - индекс точки,
VectorIndex    - cпособ создания сопряжения в заданной вершине сплайна из перечисления ksTransitionVectorIndexEnum.
Выходные параметры:
X, Y, Z    - координаты направления вектора.
```


## GetVertexCoordinatesArray - Получить массив координат и весов вершин в виде SAFEARRAY double - VT_ARRAY | VT_R8

Синтаксис Automation:
```
BOOL GetVertexCoordinatesArray( VARIANT * Coordinates,
VARIANT * Weights );
```
Синтаксис COM:
```
HRESULT GetVertexCoordinatesArray([out] VARIANT * Coordinates,
[out] VARIANT * Weights,
[out, retval] VARIANT_BOOL * Result);
Входные параметры:
Coordinates    - массив SafeArray типа VT_ARRAY    VT_R8 координат точек всех вершин,
Weights    - массив SafeArray типа VT_ARRAY    VT_R8 весов каждой из всех вершин.
Возвращаемое значение:
TRUE    - в случае удачного завершения,
FALSE    - в случае неудачи.
Примечание.
1. Параметры Coordinates и Weights не являются обязательными. В функцию достаточно передать один из указателей на VARIANT.
2. Массивы являются согласованными:
Координаты точек в массиве Coordinates лежат в следующей последовательности:
x0, y0, z0, x1, y1, z1 ...xi, yi, zi,
Веса точек в массиве Weights лежат в последовательности:
weight0, weight1, ...weighti.
```


## InvertVector - Сменить направление касательного вектора на обратное (в сопряжении)

Синтаксис Automation:
```
BOOL InvertVector( long PointIndex, ksTransitionVectorIndexEnum VectorIndex );
```
Синтаксис COM:
```
HRESULT InvertVector( long PointIndex, ksTransitionVectorIndexEnum VectorIndex, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае удачного завершения.
Входные параметры:
PointIndex    - индекс точки,
VectorIndex    - cпособ создания сопряжения в заданной вершине сплайна из перечисления ksTransitionVectorIndexEnum.
```


## Knots - Массив SAFEARRAY узлов кривой NURBS

Синтаксис Automation:
```
Knots = Object.Knots    Получить свойство (* )
Object.Knots = Knots    Установить свойство (* )
Knots = Object.GetKnots()    Получить свойство (**)
Object.SetKnots( Knots )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Knots( &Knots )    Получить свойство
Object.put_Knots( Knots )    Установить свойство
Свойство позволяет получить и изменить узлы кривой NURBS.
```


## ReadFromFile - Прочитать параметры вершин из текстового файла

Синтаксис Automation:
```
BOOL ReadFromFile( BSTR fileName );
```
Синтаксис COM:
```
HRESULT ReadFromFile( [in] BSTR fileName,
[out, retval] VARIANT_BOOL * Result);
Входные параметры:
fileName    - имя файла.
Возвращаемое значение:
TRUE    - в случае удачного завершения,
FALSE    - в случае неудачи.
Примечание.
См. также ISpline3D::WriteToFile.
```


## Reverse - Противоположное направление

Тип данных: BOOL
Синтаксис Automation:
```
Reverse = Object.Reverse( Index )    Получить свойство (* )
Object.Reverse( Index ) = Reverse    Установить свойство (* )
Reverse = Object.GetReverse( Index )    Получить свойство (**)
Object.SetReverse( Index, Reverse )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Reverse( Index, &Reverse )    Получить свойство
Object.put_Reverse( Index, Reverse )    Установить свойство
Входные параметры:
Index    - индекс касательного вектора.
```


## SetCenterPoint - Угол вектора производной в указанной точке

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


## SetVector - Установить направление касательного вектора

Синтаксис Automation:
```
BOOL SetVector( long PointIndex, ksTransitionVectorIndexEnum VectorIndex, double X, double Y, double Z );
```
Синтаксис COM:
```
HRESULT SetVector( long PointIndex, ksTransitionVectorIndexEnum VectorIndex, double X, double Y, double Z, BOOL * Result );
Возвращаемое значение:
TRUE    - в случае удачного завершения.
Входные параметры:
PointIndex    - индекс точки,
VectorIndex    - cпособ создания сопряжения в заданной вершине сплайна из перечисления ksTransitionVectorIndexEnum.
X, Y, Z    - координаты направления вектора.
```


## SplineOnPoles - Тип построения

Тип данных: BOOL
Значения свойства:
| TRUE | - сплайн по полюсам, |
| --- | --- |
| FALSE | - сплайн по точкам. |
Синтаксис Automation:
```
SplineOnPoles = iObject.SplineOnPoles;    Получить свойство (* )
iObject.SplineOnPoles = SplineOnPoles;    Установить свойство (* )
SplineOnPoles = iObject.GetSplineOnPoles();    Получить свойство (**)
iObject.SetSplineOnPoles(SplineOnPoles);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_SplineOnPoles (&SplineOnPoles)    Получить свойство
iObject->put_SplineOnPoles (SplineOnPoles)    Установить свойство
Примечание.
Свойство позволяет получить/установить сплайн по точкам/полюсам.
```


## SplineOrder - Порядок сплайна

Тип данных: long
Значения свойства:
| TRUE | - сплайн по полюсам, |
| --- | --- |
| FALSE | - сплайн по точкам. |
Синтаксис Automation:
```
SplineOrder = iObject.SplineOrder;    Получить свойство (* )
iObject.SplineOrder = SplineOrder;    Установить свойство (* )
SplineOrder = iObject.GetSplineOrder();    Получить свойство (**)
iObject.SetSplineOrder(SplineOrder);    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_SplineOrder (&SplineOrder)    Получить свойство
iObject->put_SplineOrder (SplineOrder)    Установить свойство
Примечание.
Свойство позволяет получить/установить порядок сплайна. Значение порядка кривой должно принадлежать диапазону 3 ... 10.
```


## SplineTransitionType - Способ создания сопряжения в заданной вершине

Тип данных: Значение из перечисления ksSplineTransitionTypeEnum.
Синтаксис Automation:
```
SplineTransitionType = Object.SplineTransitionType( PointIndex );    Получить свойство (* )
Object.SplineTransitionType( PointIndex ) = SplineTransitionType;    Установить свойство (* )
SplineTransitionType = Object.GetSplineTransitionType( PointIndex );    Получить свойство (**)
Object.SetSplineTransitionType( PointIndex, SplineTransitionType );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_SplineTransitionType( PointIndex, &SplineTransitionType )    Получить свойство
Object.put_SplineTransitionType( PointIndex, SplineTransitionType )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


## TangentVectorLenght - Длина касательного вектора

Тип данных: double
Синтаксис Automation:
```
TangentVectorLenght = Object.TangentVectorLenght( PointIndex );    Получить свойство (* )
Object.TangentVectorLenght( PointIndex ) = TangentVectorLenght;    Установить свойство (* )
TangentVectorLenght = Object.GetTangentVectorLenght( PointIndex );    Получить свойство (**)
Object.SetTangentVectorLenght( PointIndex, TangentVectorLenght );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_TangentVectorLenght( PointIndex, &TangentVectorLenght )    Получить свойство
Object.put_TangentVectorLenght( PointIndex, TangentVectorLenght )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
```


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

Тип данных: Указатель на интерфейс IModelObject.
Синтаксис Automation:
```
VectorDirectionObject = Object.VectorDirectionObject( PointIndex, VectorIndex );    Получить свойство (* )
Object.VectorDirectionObject( PointIndex, VectorIndex ) = VectorDirectionObject;    Установить свойство (* )
VectorDirectionObject = Object.GetVectorDirectionObject( PointIndex, VectorIndex );    Получить свойство (**)
Object.SetVectorDirectionObject( PointIndex, VectorIndex, VectorDirectionObject );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_VectorDirectionObject( PointIndex, VectorIndex, &VectorDirectionObject )    Получить свойство
Object.put_VectorDirectionObject( PointIndex, VectorIndex, VectorDirectionObject )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
VectorIndex    - cпособ создания сопряжения в заданной вершине сплайна из перечисления ksTransitionVectorIndexEnum.
```


## VectorOrientation - Направление вектора в точке сопряжения

Тип данных: BOOL
Синтаксис Automation:
```
VectorOrientation = Object.VectorOrientation( PointIndex, VectorIndex );    Получить свойство (* )
Object.VectorOrientation( PointIndex, VectorIndex ) = VectorOrientation;    Установить свойство (* )
VectorOrientation = Object.GetVectorOrientation( PointIndex, VectorIndex );    Получить свойство (**)
Object.SetVectorOrientation( PointIndex, VectorIndex, VectorOrientation );    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_VectorOrientation( PointIndex, VectorIndex, &VectorOrientation )    Получить свойство
Object.put_VectorOrientation( PointIndex, VectorIndex, VectorOrientation )    Установить свойство
Входные параметры:
long PointIndex    - индекс точки.
VectorIndex    - cпособ создания сопряжения в заданной вершине сплайна из перечисления ksTransitionVectorIndexEnum.
В Компас 18.1 удалены свойства:
•SplineTangent
•TangentCurve
•VectorLenght
```


## VertexCount - Количество вершин

Тип данных: long
Синтаксис Automation:
```
VertexCount = iObject.VertexCount;    Получить свойство (* )
VertexCount = iObject.GetVertexCount( );    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_VertexCount( &VertexCount )    Получить свойство
Примечание.
Свойство доступно только для чтения.
```


## VertexParams - Получение параметров вершины ломаной

Тип данных: Указатель на интерфейс параметров вершины ломаной ICurveVertexParam
Синтаксис Automation:
```
VertexParams = iObject.VertexParams( Index );    Получить свойство (* )
VertexParams = iObject.GetVertexParams( Index );    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_VertexParams( Index, &VertexParams )    Получить свойство
Входные параметры:
Index    - индекс вершины.
Примечание.
Свойство доступно только для чтения.
```


## VertexParamsArray - Массив параметров вершин в виде SAFEARRAY DISPATCH - VT_ARRAY | VT_DISPATCH

Тип данных: VARIANT
Значения свойства:
| Массив SafeArray типа VT_ARRAY | VT_DISPATCH. | |
| --- | --- |
Синтаксис Automation:
```
VertexParamsArray = iObject.VertexParamsArray;    Получить свойство (* )
VertexParamsArray = iObject.GetVertexParamsArray();    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_VertexParamsArray( &VertexParamsArray )    Получить свойство
Примечание.
1. Свойство доступно только для чтения.
2. Свойство позволяет получить массив SAFEARRAY параметров всех вершин. Это массив VT_DISPATCH, которые можно преобразовать в интерфейсы ICurveVertexParam.
```


## WriteToFile - Записать параметры вершин в текстовый файл

Синтаксис Automation:
```
BOOL WriteToFile( BSTR fileName );
```
Синтаксис COM:
```
HRESULT WriteToFile( [in] BSTR fileName,
[out, retval] VARIANT_BOOL * Result);
Входные параметры:
fileName    - имя файла.
Возвращаемое значение:
TRUE    - в случае удачного завершения,
FALSE    - в случае неудачи.
Примечание.
См. также ISpline3D::ReadFromFile.
В Компас 18.1 удалены методы:
•SetTangentVector
•GetTangentVector
•Invert
```
