Возвращает элемент коллекции по индексу.
Visual Basic:
Property Item(Index As Long) As BoundingBox
read-only
Index - индекс элемента в коллекции (нумерация с нуля).
Если значение Index выходит за границы диапазона 0..Count-1, исключение не возникает. Свойство возвращает объект, у которого ElemID равен -1, а все координаты прямоугольника нулевые.
Visual Basic:
Sub BoundingBoxes_Item 'Берем активный слой карты Set L = Zulu.ActiveMapDoc.Layers.Active If L.LabelLayers.Count = 0 Then MsgBox "У активного слоя нет подписей" Exit Sub End If 'Первый подключенный к слою файл надписей (нумерация с нуля) Set LL = L.LabelLayers.Item(0) 'Габариты бирок. Параметр flags зарезервирован и должен быть нулем Set Boxes = LL.Labels.GetBoundingBoxes(0) If Boxes.Count = 0 Then MsgBox "Бирок нет" Exit Sub End If 'Первый элемент коллекции: нумерация с нуля Set B = Boxes.Item(0) 'За пределами диапазона возвращается объект-заглушка с ElemID = -1 Set Stub = Boxes.Item(Boxes.Count) MsgBox "Ключ первой бирки: " & B.ElemID & vbCrLf & _ "За границей диапазона: " & Stub.ElemID End SubPython:
import zulu def Macro_BoundingBoxes_Item(): # Берем активный слой карты L = zulu.App.ActiveMapDoc.Layers.Active if L.LabelLayers.Count == 0: print("У активного слоя нет подписей") return # Первый подключенный к слою файл надписей (нумерация с нуля) LL = L.LabelLayers.Item(0) # Габариты бирок. Параметр flags зарезервирован и должен быть нулем Boxes = LL.Labels.GetBoundingBoxes(0) if Boxes.Count == 0: print("Бирок нет") return # Первый элемент коллекции: нумерация с нуля B = Boxes.Item(0) # За пределами диапазона возвращается объект-заглушка с ElemID = -1 Stub = Boxes.Item(Boxes.Count) print("Ключ первой бирки:", B.ElemID) print("За границей диапазона:", Stub.ElemID)