SetSymbolScale method (LineStyleElement)

Метод задает масштаб символа объекту LineStyleElement.

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

LineStyleElement

Синтаксис:

Visual Basic:

Sub SetSymbolScale(Scale As Double)

Scale - масштаб.

Описание:

Масштаб - множитель собственного размера символа: при масштабе 2 символ вдвое больше, чем при 1, при 0,5 - вдвое меньше. Расстояние между символами от масштаба не зависит - его задает шаг.

При нулевом масштабе символ не рисуется. У только что созданного элемента масштаб как раз нулевой, поэтому его нужно задать явно; обычное значение - 1.

Отрицательное значение метод принимает и возвращает как есть.

Пример:

Пример собирает стиль из символа, увеличенного вдвое.

Visual Basic:

Sub LineStyleElement_SetSymbolScale
'Берем активный слой карты
Set L = Zulu.ActiveMapDoc.Layers.Active
Set lsd = CreateObject("ZuluLib.LineStyleDef")
Set lse = CreateObject("ZuluLib.LineStyleElement")
lse.SetSymbol L.Symbols.ItemById(9)
'Символ вдвое больше своего размера
lse.SetSymbolScale 2
lse.SetSymbolStep 40
lsd.AddSymbolElement lse
S = "Масштаб символа в элементе: " & lsd.StyleElements.Item(0).GetSymbolScale
S = S & vbCrLf & "новый стиль получил Id " & L.LineStyles.AddItem(lsd, -1)
MsgBox S
End Sub

Python:

import zulu

def Macro_LineStyleElement_SetSymbolScale():
    # Берем активный слой карты
    L = zulu.App.ActiveMapDoc.Layers.Active
    lsd = zulu.LineStyleDef()
    lse = zulu.LineStyleElement()
    lse.SetSymbol(L.Symbols.ItemById(9))
    # Символ вдвое больше своего размера
    lse.SetSymbolScale(2)
    lse.SetSymbolStep(40)
    lsd.AddSymbolElement(lse)
    print("Масштаб символа в элементе:", lsd.StyleElements.Item(0).GetSymbolScale())
    print("новый стиль получил Id", L.LineStyles.AddItem(lsd, -1))