QReal:Robots 2.4.0

Отправлено 16 авг. 2013 г., 11:12 пользователем Yurii Litvinov   [ обновлено 22 авг. 2013 г., 3:51 ]

16 августа вышла новая версия QReal:Robots, 2.4.0, с большим количеством новых возможностей, многочисленными улучшениями и исправлениями.


Что было добавлено в этой версии.

  • Подпрограммы - возможность выделить повторяющиеся фрагменты программы в отдельную диаграмму и вызывать её в основной программе, как процедуры или функции в текстовых языках программирования. Созданная подпрограмма появляется на палитре, и её можно использовать как обычный блок. Можно вынести в подпрограмму такие действия, как, например, поворот на 90 градусов, и сделать программу гораздо короче и проще. Можно даже передавать параметры: все переменные из основной программы доступны в подпрограмме.
  • Работа с дисплеем и кнопками робота - появилась новая группа блоков, позволяющая рисовать на дисплее робота точки, линии, прямоугольники и эллипсы, писать текст. Кроме того, добавился блок, позволяющий ожидать нажатие определённой кнопки на роботе. Всё это также поддержано в 2D модели, добавлена панель с изображением управляющего блока робота, где можно увидеть изображение, выводимое программой на дисплей, и нажимать на кнопки.
  • Распознавание жестов мышью для рисования блоков. Жесты мышью использовались у нас для рисования связей - если соединить два блока с зажатой правой кнопкой мыши, между ними появляется связь. Теперь можно с зажатой правой кнопкой мыши нарисовать определённую фигуру на свободном месте диаграммы, фигура распознается и на её месте появится блок. Список доступных жестов можно посмотреть, выбрав пункт меню "Инструменты" -> "Жесты мышью". Теперь не надо долго искать блок в палитре.
  • Поддержка новых сенсоров - звука и гироскопа. Эти сенсоры, не входящие в стандартный комплект поставки NXT 2.0, тем не менее, необходимы для ряда интересных моделей.
  • Режим рисования лабиринта в 2D модели - особый режим, в котором в 2D модели отображается сетка, и все стенки автоматически выравниваются по ней. Теперь, чтобы нарисовать сложную карту с большим количеством стенок (например, лабиринт, по которому должен проехать робот), не надо вручную подгонять стенки друг к другу, лабиринт сам получится ровным и аккуратным.
  • Поддержка сенсорного ввода (сенсорных экранов) - теперь обладатели современных ноутбуков, моноблоков или мониторов, имеющих сенсорный экран, могут прокручивать, увеличивать или уменьшать диаграмму привычными жестами. Кроме того, можно пальцами рисовать жесты, создающие блоки, что делает рисование диаграмм на сенсорных экранах ещё эффектнее и увлекательнее.
  • Добавлен механизм автосохранения, который позволяет восстановить диаграмму при неожиданном завершении работы среды.

Некоторые менее значительные улучшения в этой версии.

  • Добавлена возможность назначить горячие клавиши для частых действий, через окно настроек.
  • Добавлен пример с движением вокруг коробки с использованием датчика расстояния.
  • Улучшено отображение ошибок, теперь их можно копировать в буфер обмена, очищать окно с ошибками и т.д. Теперь сообщение об ошибке не надо переписывать с экрана, достаточно скопировать его в буфер обмена и вставить в электронное письмо, скайп и т.д.
  • Добавлена возможность делать связи прямоугольными, ломаными или кривыми. Прямоугольные связи автоматически располагаются на диаграмме так, чтобы их сегменты были либо горизонтальными или вертикальными, ломаные связи позволяют пользователям самим определять точки излома (этот режим был по умолчанию в предыдущих версиях), режим кривых связей позволяет соединять блоки различными гладкими кривыми. Выбрать вид связей для диаграмм можно в окне настроек, пункт “Редактор”.
  • Над связью пишется условие, если оно задано. Теперь не надо смотреть в редакторе свойств, какая из веток условного оператора соответствует какому значению выражения.

Значимые исправления в этой версии.

  • Исправлен механизм перетаскивания группы элементов, теперь, если выделено и перетаскивается несколько блоков, связи между ними корректно перемещаются, корректно работает механизм отмены операции.
  • Исправлена работа с энкодерами в 2D модели. Теперь блок “Ждать энкодер”, как и любой блок ожидания, позволяет задать, больше или меньше заданного значения должно быть показание энкодера.
  • Убрано условие “Равно” из блоков ожидания, поскольку, в силу неточности измерений, в реальной жизни значения датчиков могут быть точно равны заданному значению только случайно.
  • Исправлен ряд падений в 2D модели, например, при снятии сенсора света в процессе работы и при запуске бесконечного цикла без ожиданий и таймера (в последнем случае хоть среда и не упадёт, сгенерированная программа на роботе работать не будет, вставляйте задержку хотя бы в одну миллисекунду внутри цикла).
  • Исправлена обработка некорректных случаев использования блока “Условие”, теперь среда более адекватно выдаёт сообщения об ошибках.
В этой версии появилось много новой функциональности, в которой может содержаться много новых ошибок. Поэтому версия объявлена экспериментальной и доступна по ссылке http://qreal.ru/experimental.html. Мы будем благодарны любым замечаниям, комментариям и пожеланиям, поскольку в сентябре планируем выпустить новую версию, в которой постараемся исправить ошибки этой. Если Вам нужна стабильная версия, используйте более старую версию 2.3.2, доступную по ссылке http://qreal.ru/latest.html.
Comments