---
title: "Интерфейс IMarkOnLeader"
type: interface
api: [api7]
tags: [interface, api7, imarkonleader]
sources:
  - imarkonleader.html
---

*API интерфейсов. Версия 7 > Документ 2D  > Обозначения для строительства  > Интерфейс IMark  > IMark - свойства  > Y - Координата точки привязки марки по Y *


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

Интерфейс марки и позиционного обозначения (с линией-выноской).
Иерархия:
IKompasAPIObject
IDrawingObject
IMark
IMarkOnLeader
Примечание:
Получить интерфейс марки можно, используя методы интерфейса коллекции марок IMarks::Mark и IMarks::Add.


## AddBranch - Добавить ответвление

Синтаксис Automation:
```
BOOL AddBranch( long Index,
BOOL Begin,
VARIANT Points );
```
Синтаксис COM:
```
HRESULT AddBranch( long Index,
BOOL Begin,
VARIANT Points,
BOOL * Result );
Входные параметры:
index    - индекс, с которым добавляется ответвление,
Begin    - признак начала ответвления TRUE - от начала полки, FALSE - от конца полки,
Points    - массив SafeArray координат точек.
Возвращаемое значение:
TRUE    - ответвление добавлено,
FALSE    - в случае неудачи.
```
Примечание:
1. Координаты точек в массиве лежат в следующей последовательности: x0, y0, x1, y1, ...xi, yi.
2. Значения координат зависят от текущей системы координат для объекта, задаваемой параметром IDrawingObject::DrawingObjectParamType


## AddBranchByPoint - Добавить прямолинейное ответвление

Синтаксис Automation:
```
BOOL AddBranchByPoint( long Index,
BOOL Begin,
double x, double y );
```
Синтаксис COM:
```
HRESULT AddBranchByPoint( long Index,
BOOL Begin,
double x,
double y,
BOOL * Result );
Входные параметры:
index    - индекс, с которым добавляется ответвление,
Begin    - признак начала ответвления TRUE - от начала полки, FALSE - от конца полки,
x, y    - координаты конца ответвления.
Возвращаемое значение:
TRUE    - ответвление добавлено,
FALSE    - в случае неудачи.
```
Примечание:
Значения координат пересчитываются в зависимости от текущей системы координат для объекта, задаваемой параметром IDrawingObject::DrawingObjectParamType


## ArrowType - Тип стрелки линии-выноски

Тип данных: из перечисления ksArrowEnum
Синтаксис Automation:
```
ArrowType = iObject.ArrowType    Получить свойство(* )
iObject.ArrowType = ArrowType    Установить свойство (* )
ArrowType = iObject.GetArrowType()    Получить свойство (**)
iObject.SetArrowType(ArrowType)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ArrowType(&ArrowType)    Получить свойство
iObject->put_ArrowType( ArrowType)    Установить свойство
```


## BranchBegin - Начало ответвления

Тип данных: BOOL
Синтаксис Automation:
```
BranchBegin = iObject.BranchBegin    Получить свойство(* )
iObject.BranchBegin = BranchBegin    Установить свойство (* )
BranchBegin = iObject.GetBranchBegin()    Получить свойство (**)
iObject.SetBranchBegin(BranchBegin)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_BranchBegin(&BranchBegin)    Получить свойство
iObject->put_BranchBegin( BranchBegin)    Установить свойство
Значения свойства:
TRUE    - от начала полки,
FALSE    - от конца полки.
Примечание.
Свойство задает признак начала ответвления.
```


## BranchCount - Число ответвлений

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


## BranchPoints - Массив SAFEARRAY координат точек ответвления

Тип данных: VARIANT типа VT_ARRAY | VT_R8
Синтаксис Automation:
```
BranchPoints = iObject.BranchPoints(index)    Получить свойство(* )
iObject.BranchPoints(index) = BranchPoints    Установить свойство (* )
BranchPoints = iObject.GetBranchPoints(index)    Получить свойство (**)
iObject.SetBranchPoints(index, BranchPoints)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_BranchPoints(index, &BranchPoints)    Получить свойство
iObject->put_BranchPoints(index, BranchPoints)    Установить свойство
Примечание.
1. Координаты точек в массиве лежат в следующей последовательности: x0, y0, x1, y1, ...xi, yi.
2. Значения координат зависят от текущей системы координат для объекта, задаваемой параметром IDrawingObject::DrawingObjectParamType.
```


## BranchPointsCount - Число точек в ответвлении

Тип данных: double
Синтаксис Automation:
```
Count = iObject.BranchPointsCount    Получить свойство(* )
Count = iObject.GetBranchPointsCount()    Получить свойство (**)
```
Синтаксис COM:
```
iObject->get_BranchPointsCount(&Count)    Получить свойство
Примечание.
Свойство доступно только для чтения.
```


## BranchX - Координата конечной точки ответвления по оси X

Тип данных: double
Синтаксис Automation:
```
BranchX = iObject.BranchX    Получить свойство(* )
iObject.BranchX = BranchX    Установить свойство (* )
BranchX = iObject.GetBranchX()    Получить свойство (**)
iObject.SetBranchX(BranchX)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_BranchX(&BranchX)    Получить свойство
iObject->put_BranchX( BranchX)    Установить свойство
Примечание.
Значения координат зависят от текущей системы координат для объекта, задаваемой параметром IDrawingObject::DrawingObjectParamType.
```


## BranchY - Координата конечной точки ответвления по оси Y

Тип данных: double
Синтаксис Automation:
```
BranchY = iObject.BranchY    Получить свойство(* )
iObject.BranchY = BranchY    Установить свойство (* )
BranchY = iObject.GetBranchY()    Получить свойство (**)
iObject.SetBranchY(BranchY)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_BranchY(&BranchY)    Получить свойство
iObject->put_BranchY( BranchY)    Установить свойство
Примечание.
Значения координат зависят от текущей системы координат для объекта, задаваемой параметром IDrawingObject::DrawingObjectParamType.
```


## DeleteBranch - Удалить ответвление

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


## ParallelBranch - Параллельное ответвление

Тип данных: BOOL
Синтаксис Automation:
```
ParallelBranch = iObject.ParallelBranch    Получить свойство(* )
iObject.ParallelBranch = ParallelBranch    Установить свойство (* )
ParallelBranch = iObject.GetParallelBranch()    Получить свойство (**)
iObject.SetParallelBranch(ParallelBranch)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ParallelBranch(&ParallelBranch)    Получить свойство
iObject->put_ParallelBranch(ParallelBranch)    Установить свойство
Значения свойства:
TRUE    - строятся параллельные ответвления,
FALSE    - строятся непараллельные ответвления.
```


## ShelfDirection - Направление полки

Тип данных: из перечисления ksShelfDirectionEnum
Синтаксис Automation:
```
ShelfDirection = iObject.ShelfDirection    Получить свойство(* )
iObject.ShelfDirection = ShelfDirection    Установить свойство (* )
ShelfDirection = iObject.GetShelfDirection()    Получить свойство (**)
iObject.SetShelfDirection(ShelfDirection)    Установить свойство (**)
```
Синтаксис COM:
```
iObject->get_ShelfDirection(&ShelfDirection)    Получить свойство
iObject->put_ShelfDirection( ShelfDirection)    Установить свойство
```
