Страница 1 из 2

Визуальное программирование и Blockly

Добавлено: Ср июн 20, 2012 1:02 pm
sergejey
Приглашаю к тестированию нового режима программирования сценариев.
(доступно пока при обновлении из исходников)

Предыстория здесь: http://smartliving.ru/forum/viewtopic.php?f=6&t=37

В редактировании сценариев появился переключатель типа кода:

Изображение

Если выбран Blockly то по нажатию на Edit открывается новое окно с редактором.

Сейчас там реализованы основные операции и при сохранении алгоритм преобразуется в программу на языке PHP.
То, как выглядит исходный код можно посмотреть переключившись на закладку PHP, но изменения там не сохраняются.

При желании можно менять тип сценария с Blockly на PHP, при этом будет использован код, созданный редактором. Обратное переключение с PHP на Blockly работает, но это только переключение -- автоматической обратной трансляции из PHP в Blockly сделать, к сожалению, нельзя.

Пример

У меня был сделан сценарий на PHP в таком виде:

Изображение

Я его переписал заново на Blockly и получился вот такой:

Изображение

Если интересно, то вот какой получился автоматический код:

Изображение

(последнее можно смотреть просто из любопытства, т.к. реально необходимости в этом нету)

Для сохранения изменений, сделанных в визуальном редакторе, нужно нажать Save. Можно так же нажать Save and Run и тогда сценарий сохранится и сразу отправится на выполнение.

Re: Визуальное программирование и Blockly

Добавлено: Сб июн 23, 2012 5:37 am
tammat
Добавил в www папку Blockly поменял admin.css удалил installed. Режим визуального программирования отсутствует.

Re: Визуальное программирование и Blockly

Добавлено: Вс июн 24, 2012 9:34 pm
sergejey
tammat писал(а):Добавил в www папку Blockly поменял admin.css удалил installed. Режим визуального программирования отсутствует.
надо посмотреть что ещё изменилось. как минимум, изменения в модуле scripts (/modules/scripts и /templates/scripts). а лучше выкачать последнюю версию исходников и запустить сравнение по-файловое, чтобы видеть все изменения и заменить файлы более новыми.

Re: Визуальное программирование и Blockly

Добавлено: Пн дек 31, 2012 5:01 pm
Athom
Подскажите, а как здесь можно передать несколько параметров? Например:

Код: Выделить всё

playSound('dingdong',1,1);

Re: Визуальное программирование и Blockly

Добавлено: Вт янв 08, 2013 8:11 pm
sergejey
Athom писал(а):Подскажите, а как здесь можно передать несколько параметров? Например:

Код: Выделить всё

playSound('dingdong',1,1);
Там используется упрощённый playSound -- без параметров. Но всегда можно использовать полноценные команды вот таким образом:

Изображение

Re: Визуальное программирование и Blockly

Добавлено: Вс ноя 04, 2018 9:16 am
SerOv
А эта тема уже не поддерживается? А где можно посмотреть примеры по программированию Blockly для Majordomo?

Re: Визуальное программирование и Blockly

Добавлено: Вс июн 07, 2020 3:19 pm
Divan
Предлагаю заинтересованным в Blockly и тем кто не понимает как нужно правильно пользоваться Blockly - развивать эту тему.

Как можно создавать свои элементы в Blockly?
[Модуль] Мои блоки (myblocks)

Что такое переменные и как их использовать?
Переменные - это контейнер, который содержит в себе различные типы данных (текст, цифры, объекты и т.д). В целом переменные позволяют создавать, хранить, изменять, а в дальнейшем оперативно обращаться к информации, заданной в них.

Пример создания переменных для пинга устройства
Создаем переменную с любым именем, я назвал 192.168.0.30
SPOILERSPOILER_SHOW
Создать переменную.jpg
Создать переменную.jpg (81.34 КБ) 5353 просмотра
Во всплывающем окне указываем имя для переменной
SPOILERSPOILER_SHOW
Указываем переменную.jpg
Указываем переменную.jpg (59.26 КБ) 5353 просмотра
Собираем код таким образом, если пинг есть - сообщить онлайн, если нет пинга - сообщить офлайн
SPOILERSPOILER_SHOW
код пинг в блокли.JPG
код пинг в блокли.JPG (31.22 КБ) 5353 просмотра

Re: Визуальное программирование и Blockly

Добавлено: Вс июн 07, 2020 3:22 pm
Divan
Как сделать округление значении в Blockly?

Внимание!!! Я показываю примеры, соответственно для работы нужно создавать свойство - метод и в методе собираем код.

Создаем второе свойство для получении значении в целых числах и метод mIntegerValue
SPOILERSPOILER_SHOW
Округление значении свойства.jpg
Округление значении свойства.jpg (24.58 КБ) 5353 просмотра
Создаем две переменные
1) Переменная TempValue - значение откуда будем получать дробное число
2) Переменная IntegerValue - значение которое будем округлять

Пример кода Blockly
SPOILERSPOILER_SHOW
Округление значении.JPG
Округление значении.JPG (28.55 КБ) 5353 просмотра

Re: Визуальное программирование и Blockly

Добавлено: Вс июн 07, 2020 3:25 pm
Divan
Как создать счетчик с шагом N?

Внимание!!! Я показываю примеры, соответственно для работы нужно создавать свойство - метод и в методе собираем код.

Счетчик с шагом 1
SPOILERSPOILER_SHOW
Создаем счетчик с увеличением в 1 шаг.JPG
Создаем счетчик с увеличением в 1 шаг.JPG (26.8 КБ) 5349 просмотров
Обратный счетчик с шагом 1
SPOILERSPOILER_SHOW
Создаем обратный счетчик.JPG
Создаем обратный счетчик.JPG (26.34 КБ) 5349 просмотров

Re: Визуальное программирование и Blockly

Добавлено: Вс июн 07, 2020 3:32 pm
Divan
Как сделать рандомный выбор цвета?

Создаем переменную, например RGB и цепляем блок случайный цвет
SPOILERSPOILER_SHOW
случайный цвет.jpg
случайный цвет.jpg (54.54 КБ) 5349 просмотров
Готовый вариант в блокли, таким образом, если запустить сценарии "Случайный цвет", то установится выбранный цвет системой
SPOILERSPOILER_SHOW
рандомный выбор цвета.JPG
рандомный выбор цвета.JPG (20.17 КБ) 5349 просмотров