Перейти к содержанию

ETraceSet.GetMinTrace (Получить минимальную трассу из набора трасс)

01.png

Описание

Возвращает минимальную трассу и массив точек с минимальным значением координаты Y из набора трасс по идентификатору.

Свойства

Входной аргумент Тип аргумента Тип переменной Описание
traceSet Константа, Переменная, Выражение ETraceSet Набор трасс
tag Константа, Переменная, Выражение String Идентификатор трассы
searchTagPart Константа, Переменная, Выражение Boolean Поиск трассы по частичному совпадению идентификатора
Выходной аргумент Тип аргумента Тип переменной Описание
minTrace Переменная ETrace Минимальная трасса
tracesIndexes Переменная Int32[] Массив с индексами трасс из набора трасс, содержащие минимальное значение координаты Y

Пример

Рассмотрим работу блока на примере простой программы, которая возвращает трейс с массивом координат (X, Ymin).

02.jpg

Создадим глобальные переменные, необходимые для работы программы. Данные переменные мы будем использовать с привязкой к элементам управления интерфейса пользователя. ETrace – переменная, которая хранит объект типа ETrace. ETraceTag – идентификатор, который будет применяться для обращения к объекту типа ETrace в коллекции трейсов и лимитов ETraceSet. ETraceSet – переменная, которая хранит объект типа ETraceSet. TracesIndexes – массив, который хранит индексы объектов типа ETrace из коллекции трейсов и лимитов ETraceSet, из которых были получены соответствующие значения Ymin.

35.jpg

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

01.jpg

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

02.jpg

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

03.jpg

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

Пример привязки элемента панели управления «TraceSet» к переменной ETraceSet показан на следующем рисунке.

36.jpg

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

04.jpg

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

05.jpg

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

05.jpg

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

06.jpg

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

16.jpg

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

17.jpg

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

18.jpg

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

19.jpg

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

20.jpg

Сформируем массив координат Y из 10 случайных значений c помощью блока RandomArray, передадим полученный массив в переменную Ypoints.

37.jpg

Добавим массив Xpoints с координатами X и массив Ypoints с координатами Y в качестве значений объекта типа ETrace с помощью блока ETrace.AddPoints.

38.jpg

Элементы массива Xpoints заданы в качестве начального значения, как показано на следующем рисунке.

39.jpg

Добавим созданный трейс, который хранится в переменной ETrace в массив ETracesArray с помощью блока AddArrayValue.

40.jpg

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

22.jpg

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

41.jpg

Далее воспользуемся блоком ETraceSet.GetMinTrace, чтобы получить трейс с массивом координат (X, Ymin), где Ymin - минимальное значение координаты Y, которое получено посредством сравнения координат Y для соответствующего X из всех трейсов в коллекции трейсов и лимитов ETraceSet с указанным идентификатором. В поиск минимального значения Y для каждой координаты X будут включены трейсы, идентификатор которых содержит слово "тест", введенное с панели управления.

07.jpg

Посмотрим, как работает пример. Введем ключевое слово "тест" в качестве идентификатора. Значение переменной ETrace после выполнения программы можно посмотреть во вкладке контекст.

01.gif