Возвращает признак отображения для всех объектов загруженного в карту слоя с заданным типом.
Visual Basic:
Function GetTypeVisible(TypeID As Long) As Long
TypeID - ID типа.
Возвращаемое значение равное 0, означает, что все режимы данного типа невидимы.
Возвращаемое значение равное 1, означает, что все режимы данного типа видимы.
Возвращаемое значение равное 2, означает, что часть режимов данного типа видимы, часть нет.
Для проверки видимости конкретного режима данного типа следует использовать метод GetModeVisible.
Признак собирается из режимов: если скрыть один режим методом SetModeVisible, метод вернет 2, а когда скрыты все режимы типа - 0. Вызов SetTypeVisible с True снова делает видимыми все режимы типа.
Для типа, которого в слое нет, метод возвращает 1. Признак действует для слоя, загруженного в карту, и в файле слоя не сохраняется: у слоя, открытого заново, все типы снова видимы.
Visual Basic:
Sub Layer_GetTypeVisible 'Берем активный слой карты Set L = Zulu.ActiveMapDoc.Layers.Active 'Признак показа у всех типов слоя S = "" For i = 0 To L.ObjectTypes.Count - 1 Set T = L.ObjectTypes.GetItemByIndex(i) S = S & "тип " & T.Id & " """ & T.Name & """: " & L.GetTypeVisible(T.Id) & vbCrLf Next MsgBox S End SubPython:
import zulu def Macro_Layer_GetTypeVisible(): # Берем активный слой карты L = zulu.App.ActiveMapDoc.Layers.Active # Признак показа у всех типов слоя for i in range(L.ObjectTypes.Count): t = L.ObjectTypes.GetItemByIndex(i) print("тип", t.Id, t.Name, ":", L.GetTypeVisible(t.Id))