---
title: "Стиль линии (Интерфейс ksCurveStyleParam)"
type: interface
api: [api7]
tags: [interface, api7, kscurvestyleparam]
sources:
  - kscurvestyleparam.html
---

*API интерфейсов. Версия 5 > Графический документ (Интерфейсы - ksDocument2D и IDocument2D)  > Интерфейсы параметров стилей объектов  > Стиль линии *


## Стиль линии (Интерфейс ksCurveStyleParam)

Интерфейс параметров стиля кривой.
Аналог данных параметров при использовании API экспортных функций - CurveStyleParam.
Примечание:
Указатель на интерфейс можно получить при помощи метода KompasObject::GetParamStruct.
Смотрите также
KompasObject


## color - Цвет

Тип данных:long.
Синтаксис Automation:
```
color = iCurveStyleParam.color    Получить свойство (* )
iCurveStyleParam.color = color    Установить свойство (* )
color = iCurveStyleParam.GetСolor()    Получить свойство (**)
iCurveStyleParam.SetСolor( color )    Установить свойство (**)
```


## curveType - Тип кривой

Тип данных:short.
Значения свойства:
| 0 | - сплошная, |
| --- | --- |
| 1 | - прерывистая, |
| 2 | - прерывистая, содержащая "картинки". |
Синтаксис Automation:
```
curveType = iCurveStyleParam.curveType    Получить свойство (* )
iCurveStyleParam.curveType = curveType    Установить свойство (* )
curveType = iCurveStyleParam.GetСurveType()    Получить свойство (**)
iCurveStyleParam.SetСurveType( curveType )    Установить свойство (**)
Смотрите также: ksCurveStyleParam::widthPen
```


## even - Тип окончания прерывистой кривой

Тип данных:short.
Значения свойства:
| 1 | - кривая всегда оканчивается штрихами, |
| --- | --- |
| 0 | - кривая оканчивается "как получится". |
Синтаксис Automation:
```
even = iCurveStyleParam.even    Получить свойство (* )
iCurveStyleParam.even = even    Установить свойство (* )
even = iCurveStyleParam.GetEven()    Получить свойство (**)
iCurveStyleParam.SetEven( even )    Установить свойство (**)
```


## GetPPattern - Получить (для прерывистой кривой) указатель на динамический массив параметров участков штриховой кривой ksDynamicArray типа CURVE_PATTERN_ARR или CURVE_PATTERN_ARR_EX

Синтаксис Automation:
```
LPDISPATCH GetPPattern (long type);
Возвращаемое значение:
- указатель на динамический массив ksDynamicArray типа CURVE_PATTERN_ARR или CURVE_PATTERN_ARR_EX.
```
Примечание:
Типу массива CURVE_PATTERN_ARR соответствует интерфейс ksCurvePattern.
Типу массива CURVE_PATTERN_ARR_EX соответствует интерфейс ksCurvePatternEx.
Смотрите также: ksCurveStyleParam::curveType


## InIit - Инициализировать параметры

Синтаксис Automation:
```
BOOL Init();
Возвращаемое значение:
TRUE    - в случае удачного завершения.
```
Примечания:
1. Метод обнуляет все параметры.
2. Создается динамический массив pattern типа CURVE_PATTERN_ARR.


## name - Имя стиля

Тип данных:строка.
Синтаксис Automation:
```
name = iCurveStyleParam.name    Получить свойство (* )
iCurveStyleParam.name = name    Установить свойство (* )
name = iCurveStyleParam.GetName()    Получить свойство (**)
iCurveStyleParam.SetName( name )    Установить свойство (**)
```


## paperWidth - Толщина линии на бумаге

Тип данных:double.
Синтаксис Automation:
```
paperWidth = iCurveStyleParam.paperWidth    Получить свойство (* )
iCurveStyleParam.paperWidth = paperWidth    Установить свойство (* )
paperWidth = iCurveStyleParam.GetPaperWidth()    Получить свойство (**)
iCurveStyleParam.SetPaperWidth( paperWidth )    Установить свойство (**)
```
Примечание:
Толщина линии, заданная этим свойством, используется, если свойство widthPen установлено в пользовательский тип толщины линии.
При инициализации параметров интерфейса методом Init также устанавливается пользовательский способ задания толщины линии.


## screenWidth -Толщина линии на экране

Тип данных:double.
Синтаксис Automation:
```
screenWidth = iCurveStyleParam.screenWidth    Получить свойство (* )
iCurveStyleParam.screenWidth = screenWidth    Установить свойство (* )
screenWidth = iCurveStyleParam.GetScreenWidth()    Получить свойство (**)
iCurveStyleParam.SetScreenWidth( screenWidth )    Установить свойство (**)
```
Примечание:
Толщина линии, заданная этим свойством, используется, если свойство widthPen установлено в пользовательский тип толщины линии.
При инициализации параметров интерфейса методом Init также устанавливается пользовательский способ задания толщины линии.


## SetPPattern - Установить (для прерывистой кривой) указатель на динамический массив параметров участков штриховой кривой ksDynamicArray типа CURVE_PATTERN_ARR или CURVE_PATTERN_ARR_EX

Синтаксис Automation:
```
BOOL SetPPattern (LPDISPATCH pPattern);
Входной параметр:
pPattern    - указатель на динамический массив ksDynamicArray типа CURVE_PATTERN_ARR или CURVE_PATTERN_ARR_EX.
Возвращаемое значение:
TRUE    - в случае удачного завершения.
```
Примечание:
Типу массива CURVE_PATTERN_ARR соответствует интерфейс ksCurvePattern.
Типу массива CURVE_PATTERN_ARR_EX соответствует интерфейс ksCurvePatternEx.
Смотрите также: ksCurveStyleParam::curveType


## widthPen - Способ задания толщины линии

Тип данных:short.
Значения свойства:
| 0 | - толщина задается пользователем, |
| --- | --- |
| 1 | - толщина как у основной линии, |
| 2 | - толщина как у тонкой линии, |
| 3 | - толщина как у утолщенной линии. |
Синтаксис Automation:
```
widthPen = iCurveStyleParam. widthPen    Получить свойство (* )
iCurveStyleParam. widthPen = widthPen    Установить свойство (* )
widthPen = iCurveStyleParam.GetWidthPen ()    Получить свойство (**)
iCurveStyleParam.SetWidthPen( widthPen )    Установить свойство (**)
```
Примечание:
Если выбрано задание толщины пользователем, то используются значения толщины линии, заданные свойствами paperWidth и screenWidth.
