GetLineDash method (LineStyleElement)

Метод возвращает длину штриха линии. (только для прерывистых линий)

Применяется к:

LineStyleElement

Синтаксис:

Visual Basic:

Function GetLineDash() As Double

Описание:

Метод возвращает то самое число в миллиметрах, которое задали методом SetLineDash, - в том числе отрицательное. У только что созданного элемента длина штриха равна 0.

У сплошной линии длина штриха равна 0; у штриховой она меньше шага, и остаток шага дает пропуск между штрихами.

Пример:

Пример показывает, какую долю шага занимает штрих у элементов первых стилей слоя.

Visual Basic:

Sub LineStyleElement_GetLineDash
'Берем активный слой карты
Set L = Zulu.ActiveMapDoc.Layers.Active
S = ""
'Нумерация стилей в коллекции с нуля, элементов в стиле - тоже
For i = 0 To 5
  Set lsd = L.LineStyles.Item(i)
  Set lse = lsd.StyleElements.Item(0)
  D = lse.GetLineDash
  St = lse.GetLineStep
  If St > 0 Then
    S = S & "стиль " & lsd.Id & ": штрих " & Round(D, 2) & " из шага " & Round(St, 2) & vbCrLf
  Else
    S = S & "стиль " & lsd.Id & ": сплошной" & vbCrLf
  End If
Next
MsgBox S
End Sub

Python:

import zulu

def Macro_LineStyleElement_GetLineDash():
    # Берем активный слой карты
    L = zulu.App.ActiveMapDoc.Layers.Active
    # Нумерация стилей в коллекции с нуля, элементов в стиле - тоже
    for i in range(6):
        lsd = L.LineStyles.Item(i)
        lse = lsd.StyleElements.Item(0)
        dash = lse.GetLineDash()
        step = lse.GetLineStep()
        if step > 0:
            print("стиль", lsd.Id, ": штрих", round(dash, 2), "из шага", round(step, 2))
        else:
            print("стиль", lsd.Id, ": сплошной")