GetModeMaxScale method (Layer)

Возвращает максимальный масштаб отображения объектов слоя с заданным типом и режимом.

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

Layer

Синтаксис:

Visual Basic:

Function GetModeMaxScale(TypeID As Long, ModeNum As Long) As Double

TypeID - ID типа.

ModeNum - номер режима.

Описание:

Если максимальный масштаб не установлен, метод вернет 0.

Номера режимов начинаются с единицы и совпадают со значением Id режима в коллекции Modes его типа.

Предел задается методом SetModeMinMaxScale; то же значение возвращает метод GetMaxScale самого режима. Заданный предел действует для слоя, загруженного в карту, и в файле слоя не сохраняется: слой, открытый заново, снова возвращает 0.

Пример:

Visual Basic:

Sub Layer_GetModeMaxScale
'Берем активный слой карты
Set L = Zulu.ActiveMapDoc.Layers.Active
'Первый тип слоя и его первый режим
Set T = L.ObjectTypes.GetItemByIndex(0)
Set Md = T.Modes.Item(1)
S = "Тип " & T.Id & " """ & T.Name & """, режим " & Md.Id & " """ & Md.Name & """"
S = S & vbCrLf & "GetModeMaxScale = " & L.GetModeMaxScale(T.Id, Md.Id)
MsgBox S
End Sub

Python:

import zulu

def Macro_Layer_GetModeMaxScale():
    # Берем активный слой карты
    L = zulu.App.ActiveMapDoc.Layers.Active
    # Первый тип слоя и его первый режим
    t = L.ObjectTypes.GetItemByIndex(0)
    md = t.Modes.Item(1)
    print("Тип", t.Id, t.Name, "| режим", md.Id, md.Name)
    print("GetModeMaxScale =", L.GetModeMaxScale(t.Id, md.Id))