Метод возвращает вертикальный сдвиг символа.
Visual Basic:
Function GetSymbolShiftVer() As Double
Метод возвращает то самое число, которое задали методом SetSymbolShiftVer, - в том числе отрицательное. У только что созданного элемента сдвиг равен 0.
При нулевом сдвиге символы стоят прямо на линии; ненулевой сдвиг уводит их в сторону от нее.
Пример собирает стиль из символов по обе стороны линии и читает сдвиги обратно.
Visual Basic:
Sub LineStyleElement_GetSymbolShiftVer 'Берем активный слой карты Set L = Zulu.ActiveMapDoc.Layers.Active Set lsd = CreateObject("ZuluLib.LineStyleDef") 'Два ряда символов: по одну и по другую сторону линии For Each shift In Array(6, -6) Set lse = CreateObject("ZuluLib.LineStyleElement") lse.SetSymbol L.Symbols.ItemById(9) lse.SetSymbolScale 1 lse.SetSymbolStep 40 lse.SetSymbolShiftVer shift lsd.AddSymbolElement lse Next Set els = lsd.StyleElements S = "Элементов в стиле: " & els.Count For j = 0 To els.Count - 1 S = S & vbCrLf & "элемент " & j & ": сдвиг поперек " & els.Item(j).GetSymbolShiftVer Next S = S & vbCrLf & "новый стиль получил Id " & L.LineStyles.AddItem(lsd, -1) MsgBox S End SubPython:
import zulu def Macro_LineStyleElement_GetSymbolShiftVer(): # Берем активный слой карты L = zulu.App.ActiveMapDoc.Layers.Active lsd = zulu.LineStyleDef() # Два ряда символов: по одну и по другую сторону линии for shift in (6, -6): lse = zulu.LineStyleElement() lse.SetSymbol(L.Symbols.ItemById(9)) lse.SetSymbolScale(1) lse.SetSymbolStep(40) lse.SetSymbolShiftVer(shift) lsd.AddSymbolElement(lse) els = lsd.StyleElements print("Элементов в стиле:", els.Count) for j in range(els.Count): print("элемент", j, ": сдвиг поперек", els.Item(j).GetSymbolShiftVer()) print("новый стиль получил Id", L.LineStyles.AddItem(lsd, -1))