ETraceSet.RemoveLimit (Удалить лимит из набора трасс)
Описание
Удаляет лимит из набора трасс.
Свойства
| Входной аргумент | Тип аргумента | Тип переменной | Описание |
|---|---|---|---|
| traceSet | Константа, Переменная, Выражение | ETraceSet | Набор трасс |
| limit | Константа, Переменная, Выражение | ELimits | Лимит |
Пример
Рассмотрим работу блока на примере простой программы, которая обеспечивает удаление объекта типа ELimits из коллекции трейсов и лимитов ETraceSet.

Создадим глобальные переменные, необходимые для работы программы. Данные переменные мы будем использовать с привязкой к элементам управления интерфейса пользователя. ELimit – переменная, которая хранит созданный объект типа ELimits, который мы будем добавлять в коллекцию трейсов и лимитов ETraceSet. ETraceSet – переменная типа ETraceSet, из которой мы будем удалять объект типа ELimits. Xpoints – переменная типа Double[] для хранения массива точек X. minYpoints – переменная типа Double[] для хранения массива минимальных значений лимита. maxYpoints – переменная типа Double[] для хранения массива максимальных значений лимита. ELimitTag – идентификатор, который будет применяться для получения объекта типа ELimits из коллекции трейсов и лимитов ETraceSet.

Создадим интерфейс пользователя. Нажмем правой кнопкой по заголовку программы и выберем пункт меню «Добавить новый элемент».

Выберем элемент «Панель управления» и введем имя элемента. Нажмем кнопку «Создать»

Добавим на панель управления следующие элементы: Интерактивные элементы -> Кнопка; Ввод данных -> Поле ввода; Пользовательские -> Пользовательский тип.

Последовательно выберем каждый из добавленных элементов, в свойствах элементов введем соответствующие имена и выполним привязку значения к переменным следующим образом: TraceSet: значение -> переменная ETraceSet; Идентификатор: значение -> переменная ELimitTag. Пример привязки элемента панели управления «TraceSet» к переменной ETraceSet показан на следующем рисунке.

Включим событие «Click» и введем имя в свойствах кнопки.

Перейдем на холст выполняемой программы. Действия программы будут происходить по нажатию пользователем на кнопку «Удалить лимит». Для этого запуск программы должен начинаться с отображения дашборда. Добавим блок «ShowDashboard» и выберем созданную панель управления в меню настройки.

Блок обработки события свяжем с программным алгоритмом, обеспечивающим соответствующие манипуляции с переменной ETraceSet. Последовательно разберем назначение всех добавленных блоков.

Блок Handler будет срабатывать по событию нажатия кнопки.

Следующий блок - CreateInstance. Данный блок создает новый объект типа ETraceSet, который не содержит никаких данных.

Далее используем блок "If - else" для построения цикла на 11 итераций. Значение переменной i вначале цикла равняется нулю и наращивается на 1 после выполнения каждой итерации. При выполнении условия i<=10 блок принимает значение "True", иначе работа блока завершается через выход "False".

При выполнении каждой итерации цикла будут выполняться следующий действия. Используем блок CreateInstance для создания нового объекта типа ELimits, который передадим в переменную ELimits, как показано на рисунке.

Зададим идентификатор созданного лимита с помощью блока ELimits.SetTag. В качестве идентификатора будем использовать текущее значение номера итерации i, преобразованное в строковый тип данных с помощью функции i.ToString().

Зададим имя созданного лимита с помощью блока ELimits.SetName. В качестве имени будем использовать текущее значение номера итерации i, преобразованное в строковый тип данных с помощью функции i.ToString().

Сформируем массив минимальных значений лимита minYpoints с помощью блока RandomArray.

Значения массива maxYpoints установим равными "30". Для этого воспользуемся механизмом настройки начального значения переменной, как показано на следующем рисунке.

Добавим созданные массивы точек в объект типа ELimits с помощью блока ELimits.AddPoints.

Добавим созданный лимит, который хранится в переменной ELimits в коллекцию трейсов и лимитов ETraceSet с помощью блока ETraceSet.AddLimit.

Нарастим значение i на 1 с помощью блока SetVariable и функции i=i+1.

По окончании созданного цикла (условие i>10) получим объект типа ELimits с заданным идентификатором из коллекции трейсов и лимитов ETraceSet с помощью блока ETraceSet.GetLimitByTag.

Передадим полученный объект в блок ETraceSet.RemoveLimit для удаления.

Посмотрим, как работает пример. Удалим объект типа ELimits с идентификатором "4" из коллекции трейсов и лимитов ETraceSet. Как видим, в результате выполнения программы лимит с указанным идентификатором отсутствует в списке.
