---
title: "Поверхность выдавливания (Интерфейсы ksExtrusionSurfaceDefinition и IExtrusionSurfaceDefinition)"
type: interface
api: [api7]
domain: [2d, feature]
tags: [interface, api7, 2d, feature, ksextrusionsurfacedefinition]
sources:
  - ksextrusionsurfacedefinition.html
---

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


## Поверхность выдавливания (Интерфейсы ksExtrusionSurfaceDefinition и IExtrusionSurfaceDefinition)

Интерфейс параметров поверхности выдавливания.
| ksExtrusionSurfaceDefinition | - интерфейс Automation |
| --- | --- |
| IExtrusionSurfaceDefinition | - интерфейс COM |
Примечание:
Данный интерфейс можно получить, используя метод интерфейса элемента модели ksEntity::GetDefinition или IEntity::GetDefinition.


## closedShell - Признак замкнутости поверхности

Тип данных: VARIANT_BOOL
Значения свойства:
| TRUE | - поверхность замкнута, |
| --- | --- |
| FALSE | - поверхность не замкнута. |
Синтаксис Automation:
```
closedShell = iExtrusion.closedShell    Получить свойство (* )
iExtrusion.closedShell = closedShell    Установить свойство(* )
closedShell = iExtrusion.GetClosedShell()    Получить свойство (**)
iExtrusion.SetClosedShell(closedShell)    Установить свойство (**)
```
Синтаксис COM:
```
closedShell = iExtrusion.GetClosedShell()    Получить свойство.
iExtrusion.SetClosedShell(closedShell)    Установить свойство.
```


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

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


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

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


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

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


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

Синтаксис Automation:
```
VARIANT_BOOL GetSideParam (VARIANT_BOOL forward,
short *type,
double *depth,
double *draftValue,
VARIANT_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.
```


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

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


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

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


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

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