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

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


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

Эквидистанта 3D.
Иерархия:
IKompasAPIObject
IModelObject
IEquidistant3D
Описание:
Позволяет задавать параметры эквидистанты в 3D документе.
Примечание:
1. Интерфейс можно получить у коллекции 3D-эквидистант, используя свойство IEquidistants3D::Equidistant3D или метод IEquidistants3D::Add.
2. После задания параметров эквидистанты требуется вызвать метод IModelObject::Update.


## AddEdge - Добавить объект в эквидистанту

Синтаксис Automation:
```
BOOL AddEdge( IModelObject * Object );
```
Синтаксис COM:
```
HRESULT AddEdge( IModelObject * Object, BOOL * Result );
Входные параметры:
Object    - указатель на добавляемый объект.
Возвращаемое значение:
TRUE    - в случае удачного завершения,
FALSE    - в случае неудачи.
```


## Angle - Угол смещения

Тип данных: double
Синтаксис Automation:
```
Angle = Object.Angle    Получить свойство (* )
Object.Angle = Angle    Установить свойство (* )
Angle = Object.GetAngle()    Получить свойство (**)
Object.SetAngle( Angle )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Angle( &Angle )    Получить свойство
Object.put_Angle( Angle )    Установить свойство
Свойство позволяет устанавливать и получать угол смещения.
```


## BaseObject - Объект, задающий базовое направление смещения или поверхность, которой должны принадлежать базовая кривая

Тип данных: Указатель на интерфейс IModelObject
Синтаксис Automation:
```
BaseObject = Object.BaseObject    Получить свойство (* )
Object.BaseObject = BaseObject    Установить свойство (* )
BaseObject = Object.GetBaseObject()    Получить свойство (**)
Object.SetBaseObject( BaseObject )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_BaseObject( &BaseObject )    Получить свойство
Object.put_BaseObject( BaseObject )    Установить свойство
Свойство позволяет устанавливать и получать объект, задающий базовое направление смещения.
```


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

Тип данных: из перечисления ksEquidistant3DCutModeEnum
Синтаксис Automation:
```
CutMode = Object.CutMode    Получить свойство (* )
Object.CutMode = CutMode    Установить свойство (* )
CutMode = Object.GetCutMode()    Получить свойство (**)
Object.SetCutMode( CutMode )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_CutMode( &CutMode )    Получить свойство
Object.put_CutMode( CutMode )    Установить свойство
Свойство позволяет устанавливать и получать тип построения эквидистанты.
```


## DirFromBegin - Смещение отсчитывать от начальной вершины пути

Тип данных: BOOL
Синтаксис Automation:
```
DirFromBegin = Object.DirFromBegin    Получить свойство (* )
Object.DirFromBegin = DirFromBegin    Установить свойство (* )
DirFromBegin = Object.GetDirFromBegin()    Получить свойство (**)
Object.SetDirFromBegin( DirFromBegin )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_DirFromBegin( &DirFromBegin )    Получить свойство
Object.put_DirFromBegin( DirFromBegin )    Установить свойство
Свойство позволяет устанавливать и получать способ отсчета смещения.
```


## Distance - Расстояние

Тип данных: double
Синтаксис Automation:
```
Distance = Object.Distance    Получить свойство (* )
Object.Distance = Distance    Установить свойство (* )
Distance = Object.GetDistance()    Получить свойство (**)
Object.SetDistance( Distance )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Distance( &Distance )    Получить свойство
Object.put_Distance( Distance )    Установить свойство
Свойство позволяет устанавливать и получать расстояние между объектом и эквидистантой.
```


## Edges - Массив ребер

Тип данных: VARIANT типа VT_ARRAY | VT_DISPATCH
Синтаксис Automation:
```
Edges = Object.Edges    Получить свойство (* )
Object.Edges = Edges    Установить свойство (* )
Edges = Object.GetEdges()    Получить свойство (**)
Object.SetEdges( Edges )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_Edges( &Edges )    Получить свойство
Object.put_Edges( Edges )    Установить свойство
Свойство позволяет устанавливать и получать массив ребер эквидистанты.
```
Примечание
Если возвращается один объект, то тип VARIANT-а будет VT_DISPATCH, если возвращается несколько объектов, то тип VARIANT-а будет VT_ARRAY | VT_DISPATCH.


## EdgesCount - Количество объектов в эквидистанте

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


## KeepRadius - Сохранять радиусы скруглений

Тип данных: BOOL
Синтаксис Automation:
```
KeepRadius = Object.KeepRadius    Получить свойство (* )
Object.KeepRadius = KeepRadius    Установить свойство (* )
KeepRadius = Object.GetKeepRadius()    Получить свойство (**)
Object.SetKeepRadius( KeepRadius )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_KeepRadius( &KeepRadius )    Получить свойство
Object.put_KeepRadius( KeepRadius )    Установить свойство
Свойство позволяет включать и отключать сохранение радиусов скруглений.
```


## OnFace - Способ построения эквидистанты: вдоль поверхности или по направлению от вершины

Тип данных: BOOL
Значения свойства:
| TRUE | - вдоль поверхности, |
| --- | --- |
| FALSE | - по направлению от вершины. |
Синтаксис Automation:
```
OnFace = Object.OnFace    Получить свойство (* )
Object.OnFace = OnFace    Установить свойство (* )
OnFace = Object.GetOnFace()    Получить свойство (**)
Object.SetOnFace( OnFace )    Установить свойство (**)
```
Синтаксис COM:
```
Object.get_OnFace( &OnFace )    Получить свойство
Object.put_OnFace( OnFace )    Установить свойство
Свойство позволяет устанавливать и получать способ построения эквидистанты.
```


## RemoveEdge - Удалить объект из списка объектов эквидистанты

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


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

Тип данных: указатель на интерфейс IVector3D
Синтаксис Automation:
```
Vector3D = Object.Vector3D    Получить свойство (* )
Vector3D = Object.GetVector3D()    Получить свойство (**)
```
Синтаксис COM:
```
Object.get_Vector3D( &Vector3D )    Получить свойство
```
Примечание:
1. Свойство позволяет получить интерфейс вектора, задающего направление построения эквидистанты.
2. Свойство доступно только для чтения.
