ELimits.InsertPoint
ELimits.InsertPoint - вставляет точку (X,Ymin,Ymax) в таблицу данных объекта типа ELimits под заданным индексом Index.
Свойства
| Входной аргумент | Тип аргумента | Тип переменной | Описание |
|---|---|---|---|
| ELimits | Variable | ELimits | Объект типа ELimits |
| X | Variable | Double | Значение X |
| Ymin | Variable | Double | Значение нижнего предела лимита |
| Ymax | Variable | Double | Значение верхнего предела лимита |
| Index | Variable | Int | Индекс добавляемой точки в массиве данных лимита |
Пример
Рассмотрим работу блока на примере простой программы, которая обеспечивает добавление пользовательской точки лимита под заданным индексом с отображением лимита на графике.
Создадим глобальные переменные, необходимые для работы программы. Данные переменные мы будем использовать с привязкой к элементам управления интерфейса пользователя.
ELimit – переменная типа ELimits, в которую мы будем добавлять точки.
X – значение величины X.
Ymin – минимальное значение лимита для связанного X.
Ymax – максимальное значение лимита для связанного X.
Xpoints – массив точек X.
YminPoints – массив минимальных значений лимита Ymin.
YmaxPoints – массив максимальных значений лимита Ymax.
pointIndex – индекс, под которым будет добавлена точка в массив данных лимита.
Создадим интерфейс пользователя. Нажмите правой кнопкой по заголовку программы и выберите пункт меню «Добавить новый элемент».

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

Добавим на панель управления следующие элементы:
Ввод данных -> Числовой ввод (4 элемента);
Интерактивные элементы -> Кнопка (1 элемент);
Визуализация данных -> Декартова диаграмма.
Последовательно выберерем каждый из добавленных элементов, в свойствах элементов введем соответствующие имена и выполним привязку значения к переменным следующим образом:
Значение X: значение -> переменная X;
Значение Ymin: значение -> переменная Ymin;
Значение Ymax: значение -> переменная Ymax;
Индекс точки: значение -> переменная pointIndex;
Пример привязки элемента панели управления «Значение X» к переменной Х показан на следующем рисунке.

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

Нажмем правой кнопкой мыши по графику и выберем пункт меню «Настройка». Выполним настройку графика, как показано на следующем рисунке.

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

Свяжем стартовый узел программы с добавленным блоком отображения панели управления, как показано на рисунке.
Блок обработки события свяжем с программным алгоритмом, обеспечивающим соответствующие манипуляции с переменной ELimit. Добавим на холст блок ELimits.InsertPoint. В качестве входной переменной ELimits в блоке ELimits.AddPoint укажем переменную «ELimit».
В блоке Handler выберем созданное событие нажатия кнопки.
Следующим блоком идёт ELimits.InsertPoint. Тут мы добавим значения «X», «Ymin» и «Ymax» в массив точекк переменной ELimit под заданным индексом pointIndex.
Выполнение манипуляций с лимитом завершается обновлением графика на панели управления. Для этого применяется блок ELimits.GetPoints, который передает точки указанного лимита в три массива. Можно передать как все точки, так и указать начальный индекс, а также количество точек, которые необходимо передать в массив. В нашем случае данные передаются в массивы Xpoints, YminPoints и YmaxPoints, которые также являются источником значений X, Ymin и Ymax графика на панели управления.

После передачи данных из лимита в массив следует вызвать блок UpdateChart, который обеспечит отображение новых данных на графике пользовательского интерфейса. В свойствах выберем панель управления и график, который следует обновить.

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