Иконки объектов. Динамическая раскраска иконок.

Viber Bot

English version

В сервисе обновлен и расширен набор иконок объектов. Для выбора иконки объекта кликните на "Основная информация" в контекстном меню объкта. Для изменения иконки кликните на значок иконки. Выберите группу иконок и в ней выберите нужную иконку. Вы можете загрузить свою иконку. Для этого выберите группу "Иконки пользователя"" и загрузите или выберите нужную иконку. Иконки пользователя должны быть размером 28 x 28. Для изменения цвета иконки кликните на кнопку "Палитра". При изменении цвета обработке подвергаются только черные пикселы изображения. Замена цвета в иконках пользователя также осуществляется с учетом этого правила.

Динамическая раскраска иконок
Иконки могут динамически перекрашиваться в зависимости от значений параметров объекта. Для этого необходимо в контекстном меню выбрать "Настройки" и кликнуть на кнопку "Сценарий". В открывшемся окне введите или добавьте к содержимому скрипта макрос:
 .ICON_COLOR V 0 GRAY; 50 00FF00; * RED; 
  • .ICON_COLOR - название макроса
  • V - параметр, в зависимости от значения которого производится перекраска иконки
  • 0 GRAY; ... - группы, определяющие интервалы значений параметра и соответствующие им цвета


Viber Bot

В данном примере перекаска идет по скорости (параметр V). При нулевой скорости (значении меньше или равного заданной величине) иконка окрашивается в серый цвет. При скорости от 0 до 50(включительно) иконка окрашивается в зеленый цвет. При скорости больше 50, иконка будет окрашиваться в красный цвет. В качестве цвета можно использовать или его шестнадцатеричное значение, или символические константы цветов. Вы можете задавать свои интервалы:
.ICON_COLOR V 0 00FF00; 20 00FF00; 40 00FF00; 60 00FF00; * RED;
или свои параметры (батарея - B, датчик D1, ...):
.ICON_COLOR B 3.0 RED; * GREEN;

Символические константы цветов
WHITE SILVER GRAY BLACK
RED MAROON YELLOW OLIVE
LIME GREEN AQUA TEAL
BLUE NAVY FUCHSIA PURPLE


При добавлении подобного макроса в сценарий группы динамическая окраска будет действовать для всех объектов группы (для которых не заданы собственные скрипты).