Заменяет группу всеми объектами слоя, которые в нее не входили.
Visual Basic:
Sub Invert()
Объекты слоя, входившие в группу, из нее исключаются, остальные объекты слоя добавляются; у пустой группы в нее попадают все объекты слоя. Ключи, которых в слое нет (см. AddElem), остаются в группе.
Пример выделяет все объекты активного слоя, кроме первого.
Visual Basic:
Sub Selection_Invert 'Берем активный слой карты и его группу Set L = Zulu.ActiveMapDoc.Layers.Active Set S = L.Selection S.Clear S.AddElem L.ElementKeys.Item(1) 'Все объекты, кроме первого S.Invert MsgBox "Объектов в слое: " & L.ElementKeys.Count & vbCrLf & "в группе: " & S.ElementKeys.Count S.Clear End SubPython:
import zulu def Macro_Selection_Invert(): # Берем активный слой карты и его группу L = zulu.App.ActiveMapDoc.Layers.Active S = L.Selection S.Clear() S.AddElem(L.ElementKeys.Item(1)) # Все объекты, кроме первого S.Invert() print("Объектов в слое:", L.ElementKeys.Count, ", в группе:", S.ElementKeys.Count) S.Clear()