Метод задает вертикальный сдвиг символа объекту LineStyleElement.
Visual Basic:
Sub SetSymbolShiftVer(dShift As Double)
dShift - вертикальный сдвиг.
Сдвиг уводит символы в сторону от линии, поперек ее направления, и измеряется в точках устройства при выводе методом Draw: на линии, нарисованной слева направо, положительный сдвиг поднимает символы, а отрицательный опускает.
Направление здесь противоположно сдвигу линии SetLineShiftVer: на той же линии положительный сдвиг линейного элемента опускает рисунок, а символьного - поднимает.
Отрицательное значение метод принимает и возвращает как есть; у только что созданного элемента сдвиг нулевой.
Пример собирает стиль из линии и символов, вынесенных в сторону от нее.
Visual Basic:
Sub LineStyleElement_SetSymbolShiftVer 'Берем активный слой карты Set L = Zulu.ActiveMapDoc.Layers.Active Set lsd = CreateObject("ZuluLib.LineStyleDef") 'Сама линия - сплошная Set line1 = CreateObject("ZuluLib.LineStyleElement") line1.SetLineType 0 line1.SetLineColor RGB(0, 0, 255) lsd.AddLineElement line1 'Символы в 8 точках от линии Set lse = CreateObject("ZuluLib.LineStyleElement") lse.SetSymbol L.Symbols.ItemById(9) lse.SetSymbolScale 1 lse.SetSymbolStep 40 lse.SetSymbolShiftVer 8 lsd.AddSymbolElement lse S = "Сдвиг символов поперек линии: " & lsd.StyleElements.Item(1).GetSymbolShiftVer S = S & vbCrLf & "новый стиль получил Id " & L.LineStyles.AddItem(lsd, -1) MsgBox S End SubPython:
import zulu def Macro_LineStyleElement_SetSymbolShiftVer(): # Берем активный слой карты L = zulu.App.ActiveMapDoc.Layers.Active lsd = zulu.LineStyleDef() # Сама линия - сплошная line1 = zulu.LineStyleElement() line1.SetLineType(0) line1.SetLineColor(16711680) lsd.AddLineElement(line1) # Символы в 8 точках от линии lse = zulu.LineStyleElement() lse.SetSymbol(L.Symbols.ItemById(9)) lse.SetSymbolScale(1) lse.SetSymbolStep(40) lse.SetSymbolShiftVer(8) lsd.AddSymbolElement(lse) print("Сдвиг символов поперек линии:", lsd.StyleElements.Item(1).GetSymbolShiftVer()) print("новый стиль получил Id", L.LineStyles.AddItem(lsd, -1))