Анимация в DOP-B

Модератор: AND

Re: Анимация в DOP-B

Сообщение Aleksandr_Sorokin » 07 окт 2018, 08:11

Добрый день!

Прошу подсказать по анимации. Топикстартер указал, что сделал анимацию вентилятора с помощью макроса. У меня стоит та же задача (пока в режиме оффлайн эмуляции), но не могу никак понять, как это сделать через, например, Background макрос. Насколько я понимаю, данный тип макроса выполняется постоянно, то есть закончившись, начинается сначала. Я не могу понять как правильно написать код в этом случае, чтобы в во внутренний регистр панели поочерёдно записывать числа от 1 до 4 и повторять это действие постоянно, тем самым вызывая анимацию.

Спасибо.
Aleksandr_Sorokin
 
Сообщений: 21
Зарегистрирован: 11 дек 2014, 07:31

Re: Анимация в DOP-B

Сообщение bayk » 07 окт 2018, 09:45

Он просто в макрос сделал генератор импульсов заданной частоты через if then или ещё что. И этот параметр считывал в стейт индикатора. А туда грузил стопицот разных картинок.
bayk
 
Сообщений: 181
Зарегистрирован: 30 май 2015, 22:20

Re: Анимация в DOP-B

Сообщение Aleksandr_Sorokin » 10 окт 2018, 10:00

Сделал следующим образом, может кому-то будет полезно.

Код следующий:

IF $200.0 == ON
$80 = $80 + 1
IF $80 == 17
$80 = 0
ENDIF
ENDIF


$200.0 - бит включения анимации;
$80 - регистр Multistate indicator.

Выбрал картинку из банка ModernFan, там есть картинка вентилятора на 17 положений. В $80 выбрал Word, State - 17, все картинки загрузил туда. Соответственно, сколько положений, таким и должно быть число в коде. При изменении бита включения анимация продолжает работать именно с места остановки, никаких рывков нет. Выглядит довольно неплохо.

Сначала делал этот код через Clock macro, меняя скорость вращения посредством изменения Clock macro delay time. Работает нормально, но иногда чуть подтормаживает.

Лучше всего работает через Background macro, ничего не тормозит (в режиме оффлайн эмуляции). Скорость вращения можно менять с помощью Background macro update cycle.
Aleksandr_Sorokin
 
Сообщений: 21
Зарегистрирован: 11 дек 2014, 07:31

Пред.

Вернуться в Панели оператора

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2