Type property (Layer)

Возвращает тип данного слоя из набора констант eLayerType.

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

Layer

Синтаксис:

Visual Basic:

Property Type As eLayerType

read-only

Описание:

У локальных векторных слоев свойство дает 70 - и у слоя сети, и у площадного или точечного слоя, и у слоя, созданного в памяти методом AddInMemory. По виду данных слои между собой это свойство не различает - для этого есть ObjectTypes и графический тип объектов.

Другие значения: 104 - слой рельефа, -2 - растр, открытый как временный слой; полный список дает перечисление eLayerType. Серверный слой отличается не этим свойством, а методом IsRemote.

Пример:

Visual Basic:

Sub Layer_Type
'Перебираем слои карты
Set M = Zulu.ActiveMapDoc
S = ""
For i = 1 To M.Layers.Count
  Set L = M.Layers.Item(i)
  S = S & L.UserName & ": тип " & L.Type
  If L.Type = 70 Then S = S & " (векторный)"
  If L.Type = 104 Then S = S & " (рельеф)"
  If L.Type = -2 Then S = S & " (растр)"
  S = S & vbCrLf
Next
MsgBox S
End Sub

Python:

import zulu

def Macro_Layer_Type():
    # Перебираем слои карты
    M = zulu.App.ActiveMapDoc
    for i in range(1, M.Layers.Count + 1):
        L = M.Layers.Item(i)
        note = {70: " (векторный)", 104: " (рельеф)", -2: " (растр)"}.get(L.Type, "")
        print(L.UserName, ": тип", L.Type, note)