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

Чтобы добавить тег к выражению, дважды нажмите на нем в "Дереве проекта". Система добавит его на поле редактирования выражений. В правой части интерфейса есть возможность быстрого доступа к нужной функции (в данной области представлены не все доступные функции). Перед подтверждением рекомендуется проверить корректность выражения, нажав кнопку "Проверить". В случае отсутствия ошибок в области сообщений компилятора будет выведено сообщение об успешном прохождении теста.

- Дерево проекта — перечень всех физических тегов проекта.
- Выражение — область редактирования исходного кода. Добавление тега в область осуществляется двойным нажатием левой кнопки мыши.
- Перечень часто используемых функций в выражениях.
- Область, в которой отображается подсказка по использованию выбранной функции.
- Кнопка "Проверить" — проверка правильности написания исходного выражения.
Видеопример работы с редактором выражений.
Функции
В данном разделе представлен полный перечень функций, применяемых в выражениях и модификаторах.
Внимание
- функции, обозначенные символом *, доступны только в выражениях для тегов и недоступны в модификаторах;
- функция
scaleScalarдоступна только в модификаторах; - имя тега передается в функцию в формате
${var_name}, за исключением модификаторов, где требуется использовать ключевое словоvalueвместо названия тега; - если в функцию передается аргумент, представленный в виде строки, то его необходимо заключить в одинарные кавычки
'some string'; - значения типа
numberне требуется заключать в кавычки.
| Оператор | Описание | Пример выражения |
|---|---|---|
abs |
Возвращает абсолютное значение | abs(${var}) |
arccos |
Вычисляет арккосинус значения в радианах | arccos(${var}) |
arcsin |
Вычисляет арксинус значения в радианах | arcsin(${var}) |
arctan |
Вычисляет арктангенс значения в радианах | arctan(${var}) |
arccotan* |
Вычисляет арккотангенс значения в радианах | arccotan(${var}) |
band |
Побитовое И над значениями тегов x и y |
band(${x}, ${y}) |
bnot |
Побитовое НЕ над значением тега x |
bnot(${x}) |
bor |
Побитовое ИЛИ над значениями тегов x и y |
bor(${x}, ${y}) |
blshift |
Побитовое смещение влево значения тега x на n бит |
blshift(${x}, n) |
brshift |
Побитовое смещение вправо значения тега x на n бит |
brshift(${x}, n) |
bxor |
Побитовое исключающее ИЛИ над значениями тегов x и y |
bxor(${x}, ${y}) |
ceil |
Округляет вверх до ближайшего целого значения | ceil(2.4) = 3 |
cos |
Вычисляет косинус значения в радианах | cos(${var}) |
cotan* |
Вычисляет котангенс значения в радианах | cos(${arg}) |
dateTimeToString* |
Преобразует время в формате строки ISO8601 | dateTimeToString('2025-12-16T05:40:05Z') |
exp |
Возводит значение тега x в натуральную степень e ~ 2.72 |
exp(${x}) |
fact* |
Вычисляет факториал значения | fact(${x}) |
floor |
Округляет вниз до ближайшего целого значения | floor(2.6) = 2 |
frac |
Извлекает дробную часть значения | frac(${var}) |
getBit |
Извлекает бит n из значения тега var |
getBit(${var}, n) |
if |
Условная функция: возвращает одно из двух значений: x — (true), y — (false) |
if(${var} > 100, x, y) |
ln |
Вычисляет натуральный логарифм значения | ln(${var}) |
max |
Возвращает максимальное из значений тегов x и y |
max(${x}, ${y}) |
min |
Возвращает минимальное из значений тегов x и y |
min(${x}, ${y}) |
power* |
Возводит значение тега var в степень n |
power(${var}, n) |
round |
Округляет значение до ближайшего целого | round(2.6) = 3 |
scaleScalar |
Масштабирование значения x из диапазона [inS, inE] в диапазон [outS, outE] |
scaleScalar(${x}, inS, inE, outS, outE) |
setBit |
Устанавливает бит n в значение state (0 или 1) тега var |
setBit(${var}, n, state) |
sin |
Вычисляет значение синуса в радианах | sin(${var}) |
sqr* |
Возводит значение в квадрат | sqr(${var}) |
sqrt |
Получает квадратный корень значения | sqrt(${var}) |
strInCommaText* |
Проверяет находится ли текст str в аргументе commaText |
strInCommaText('str', ${commaText}) |
trunc |
Извлекает целую часть значения тега var |
trunc(${var}) |
Примечание:
- ФункцияgetBit(значение, номер_бита)возвращает 1, если бит установлен, и 0 — если сброшен. Нумерация битов обычно начинается с 0 (младший бит).