---
title: "Основание — элемент выдавливания (Интерфейс ksBaseExtrusionDefinition, IBaseExtrusionDefinition)"
type: interface
api: [api7]
domain: [2d, feature]
tags: [interface, api7, 2d, feature, ksbaseextrusiondefinition]
sources:
  - ksbaseextrusiondefinition.html
---

*API интерфейсов. Версия 5 > Документ-модель (Интерфейсы - ksDocument3D, IDocument3D )  > Компонент сборки (деталь или подсборка). Интерфейсы ksPart и IPart  > Объект модели (Интерфейсы ksEntity и IEntity)  > Интерфейсы ksEntity и iEntity - Интерфейс элемента модели (оси, плоскости, формообразующего элемента)  > Интерфейсы формообразующих операций *


## Основание — элемент выдавливания (Интерфейс ksBaseExtrusionDefinition, IBaseExtrusionDefinition)

Интерфейс параметров основания - элемента выдавливания.
| ksBaseExtrusionDefinition | - интерфейс Automation |
| --- | --- |
| IBaseExtrusionDefinition | - интерфейс COM |
Примечание:
1. Данный интерфейс устарел. Рекомендуется использовать вместо него интерфейс ksBossExtrusionDefinition
2. Данный интерфейс можно получить, используя метод интерфейса элемента модели ksEntity::GetDefinition или IEntity::GetDefinition.


## directionType - Направление выдавливания

Тип данных:short.
Синтаксис Automation:
```
directionType = iBaseExtrusion.directionType    Получить свойство(* )
iBaseExtrusion.directionType= directionType    Установить свойство (* )
directionType = iBaseExtrusion.GetDirectionType()    Получить свойство (**)
iBaseExtrusion.SetDirectionType(directionType)    Установить свойство (**)
Значения свойства:
Типы направлений...
```
Примечание:
1. Нормаль, проведенная к грани, всегда направлена наружу ("из тела детали").
2. Прямое направление совпадает с нормалью, проведенной к плоскости эскиза.
3. Для вырезаемого элемента выдавливания направление противоположно нормали.


## ExtrusionParam - Получить указатель на интерфейс параметров элемента выдавливания

Синтаксис Automation:
```
LPDISPATCH ExtrusionParam();
```
Синтаксис COM:
```
LPEXTRUSIONPARAM ExtrusionParam();
Возвращаемое значение:
- указатель на интерфейс ksExtrusionParam или IExtrusionParam.
```


## GetDepthObject - Получить объект, задающий глубину выдавливания

Синтаксис Automation:
```
LPDISPATCH GetDepthObject (BOOL normal);
```
Синтаксис COM:
```
LPENTITY GetDepthObject (BOOL normal);
Входные параметры:
normal    - направление выдавливания: (TRUE - совпадает с направлением нормали к плоскости эскиза, FALSE - противоположно направлению нормали к плоскости эскиза).
Возвращаемое значение:
- указатель на интерфейс объекта глубины выдавливания ksEntity или IEntity.
```


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

Синтаксис Automation:
```
BOOL GetSideParam (BOOL forward,
short *type,
double *depth,
double *draftValue,
BOOL *draftOutward);
```
Синтаксис COM:
```
BOOL GetSideParam (BOOL forward,
short *type,
double *depth,
double *draftValue,
BOOL *draftOutward);
Входной параметр:
forward    - направление выдавливания: TRUE - прямое направление, FALSE - обратное направление.
Выходные параметры:
type    - тип выдавливания,
depth    - глубина выдавливания,
draftValue    - угол уклона,
draftOutward    - направление уклона: FALSE - уклон наружу, TRUE - уклон внутрь.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## GetSketch - Получить указатель на интерфейс эскиза элемента

Синтаксис Automation:
```
LPDISPATCH GetSketch();
```
Синтаксис COM:
```
LPENTITY GetSketch();
Возвращаемое значение:
- указатель на интерфейс эскиза ksEntity или IEntity.
```


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

Синтаксис Automation:
```
BOOL GetThinParam (BOOL *thin,
short *thinType,
double *normalThickness,
double *reverseThickness);
```
Синтаксис COM:
```
BOOL GetThinParam (BOOL *thin,
short *thinType,
double *normalThickness,
double *reverseThickness);
Выходные параметры:
thin    - признак тонкостенной операции,
thinType    - направление построения тонкой стенки,
normalThickness    - толщина стенки в прямом направлении,
reverseThickness    - толщина стенки в обратном направлении.
Типы направлений...
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## ResetDepthObject - Отказаться от установленного методом SetDepthObject объекта, задающего глубину выдавливания

Синтаксис Automation:
```
BOOL ResetDepthObject (BOOL normal);
```
Синтаксис COM:
```
BOOL ResetDepthObject (BOOL normal);
Входные параметры:
normal    - направление выдавливания: (TRUE - совпадает с направлением нормали к плоскости эскиза, FALSE - противоположно направлению нормали к плоскости эскиза).
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
См. также метод SetDepthObject
```


## SetDepthObject - Установить объект, задающий глубину выдавливания

Синтаксис Automation:
```
BOOL SetDepthObject (BOOL normal, LPDISPATCH obj);
```
Синтаксис COM:
```
BOOL SetDepthObject (BOOL normal, LPENTITY obj);
Входные параметры:
normal    - направление выдавливания: (TRUE - совпадает с направлением нормали к плоскости эскиза, FALSE - противоположно направлению нормали к плоскости эскиза),
obj    - указатель на интерфейс объекта глубины выдавливания ksEntity или IEntity.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## SetSideParam - Установить параметры выдавливания в одном направлении

Синтаксис Automation:
```
BOOL SetSideParam (BOOL forward,
short type,
double depth,
double draftValue,
BOOL draftOutward);
```
Синтаксис COM:
```
BOOL SetSideParam (BOOL forward,
short type,
double depth,
double draftValue,
BOOL draftOutward);
Входные параметры:
forward    - направление выдавливания: TRUE - прямое направление, FALSE - обратное направление.
type    - тип выдавливания,
depth    - глубина выдавливания,
draftValue    - угол уклона,
draftOutward    - направление уклона: FALSE - уклон наружу, TRUE - уклон внутрь.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## SetSketch - Задать указатель на интерфейс эскиза элемента

Синтаксис Automation:
```
BOOL SetSketch (LPDISPATCH sketch);
```
Синтаксис COM:
```
BOOL SetSketch (LPENTITY sketch);
Входной параметр:
sketch    - указатель на интерфейс эскиза ksEntity или IEntity.
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


## SetThinParam - Изменить параметры тонкой стенки

Синтаксис Automation:
```
BOOL SetThinParam (BOOL thin,
short thinType,
double normalThickness,
double reverseThickness);
```
Синтаксис COM:
```
BOOL SetThinParam (BOOL thin,
short thinType,
double normalThickness,
double reverseThickness);
Входные параметры:
thin    - признак тонкостенной операции,
thinType    - направление построения тонкой стенки,
normalThickness    - толщина стенки в прямом направлении,
reverseThickness    - толщина стенки в обратном направлении.
Типы направлений...
Возвращаемое значение:
TRUE    - в случае успешного завершения,
FALSE    - в случае неудачи.
```


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

Синтаксис Automation:
```
LPDISPATCH ThinParam();
```
Синтаксис COM:
```
LPTHINPARAM ThinParam();
Возвращаемое значение:
- указатель на интерфейс ksThinParam или IThinParam.
```
