Страница 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
СпойлерПоказать
Создать переменную.jpg
Создать переменную.jpg (81.34 КБ) 4922 просмотра
Во всплывающем окне указываем имя для переменной
СпойлерПоказать
Указываем переменную.jpg
Указываем переменную.jpg (59.26 КБ) 4922 просмотра
Собираем код таким образом, если пинг есть - сообщить онлайн, если нет пинга - сообщить офлайн
СпойлерПоказать
код пинг в блокли.JPG
код пинг в блокли.JPG (31.22 КБ) 4922 просмотра

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

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

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

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

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

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

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

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

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

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

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

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