SelectionParams property (MapDoc)

Возвращает/устанавливает стиль, которым на карте выделяются объекты группы.

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

MapDoc

Синтаксис:

Visual Basic:

Property SelectionParams As HighlightParams

Описание:

Стиль задает цвет, толщину и вид линий (LineColor, LineWidth, LineStyle) и заливку (FillColor, PatColor, FillStyle), которыми рисуются объекты, выделенные в группу (Layer.Selection). Новый стиль виден у уже выделенных объектов после перерисовки карты - при ее сдвиге или после вызова метода DrawInMapExtents вида карты; само присваивание карту не перерисовывает.

Свойство возвращает копию стиля: изменения в ней на карту не действуют, пока копия не присвоена свойству обратно. В VBScript присваивание пишется без Set: Doc.SelectionParams = P. Стиль общий для всех карт: ZuluGIS хранит его в настройках пользователя, а не в файле карты. Присвоенный стиль сразу получают все открытые карты, и он остается для карт, открытых или созданных позже; карту измененной он не отмечает: свойство Saved остается True.

Пример:

Пример делает выделение на рабочей карте зеленым толщиной 4 и выделяет все объекты активного слоя.

Visual Basic:

Sub MapDoc_SelectionParams
'Берем рабочую карту и копию стиля выделения
Set Doc = Zulu.ActiveMapDoc
Set P = Doc.SelectionParams
P.LineColor = RGB(0, 255, 0)
P.LineWidth = 4
'Присваиваем стиль обратно - без Set
Doc.SelectionParams = P
'Выделяем все объекты активного слоя
Set L = Doc.Layers.Active
L.Selection.SelectAll
MsgBox "Выделено объектов: " & L.Selection.ElementKeys.Count
End Sub

Python:

import zulu

def Macro_MapDoc_SelectionParams():
    # Берем рабочую карту и копию стиля выделения
    doc = zulu.App.ActiveMapDoc
    P = doc.SelectionParams
    P.LineColor = 65280
    P.LineWidth = 4
    # Присваиваем стиль обратно
    doc.SelectionParams = P
    # Выделяем все объекты активного слоя
    L = doc.Layers.Active
    L.Selection.SelectAll()
    print("Выделено объектов:", L.Selection.ElementKeys.Count)