lwilis 27.03.2012 20:21

Я рекомендуюПрограммируемый 2D редактор Nodebox с Python-driven интерфейсом

Знакомимся с Nodebox

Как это, рисовать при помощи прямого программирования? Затем выяснилось, что обойтись можно чисто визуальным программированием, создавая связи между различными блоками.

скриншот окна редактора Nodebox

На приведенной картинке обратим внимание на 4 секции, составляющих рабочую среду Nodebox. Перед тем, как перейти к описанию, небольшой дисклэймер:
Редактор или среда Nodebox легко устанавливается под Mac OS X, Windows и не очень легко под Gnu/Linux. Проект Nodebox есть на гитхаб, можно ознакомиться со способом установки его под Linux. Что же внутри?

Секция Network

Сюда мы добавляем новые узлы (node), каждый узел обладает индивидуальными свойствами: создание объектов, преобразование объектов, взаимодействие одного объекта с другим etc. После добавления узла мы можем присоединить его выход ко входу другого узла. Таким образом мы создаем заготовку для нашего результата. Ничего не напоминает? Пользуясь случаем, передаю привет линуксовым пайпам.

Parameters

Предназначена для задания собственных параметров каждого узла, добавленного в секции Network. Здесь следует определять цвета, координаты и другие параметры объектов.

Viewer

Помогает качественно оценить текущий результат.

Source

Позволяет посмотреть непосредственно программный код, не возбраняется "залезть в кишки" и напрямую изменить свойства того или иного узла.

К практике


Зайдем в меню "New Node" (оно подсвечивается после создания нового проекта) и создадим узел (node) "TextPath" и в секции Parameters в форме "Text" напечатаем букву "W". То есть это такой текст, который может использоваться как Path. Объекты типа Path задают направление и ориентацию для прикрепленных к ним объектов. А прикрепим мы текст "linux", который будет содержаться в объекте типа "TextonPath". Тут можно поиграть с размерами шрифта и другими параметрами. Теперь соединим два наших узла связью

Узлы TextPath и TextonPath соединены в секции Network редактора Nodebox

и увидим в секции Viewer что-то такое:

Результат соединения объектов TextPath и TextonPath

Когда я начал разбираться с Nodebox, то сразу предполагал поделиться своим опытом с сообществом Welinux, поэтому неудивительно, что для наполнения демки выбрано нечто, символизирующее наш ресурс.

Осваиваем объединение


По аналогии реализуем следующую цепочку:

Связанные объкты textpath (буква "e") и дуга в редакторе Nodebox

Узел Compound служит для объединения объектов в одной логическое целое. Теперь нам осталось также объединить компаундом первую цепочку со второй целиком и в результате будет нечто такое:

Похоже на новое лого Welinux, в редакторе Nodebox

Я подобрал цвет заливки и контура, задал дополнительные параметры. И вы поиграйте с ними. Это весело.

А вообще, Nodebox уже настолько крут, что с помощью него можно сделать анимацию. надо только задать параметр в виде некой формулы, а не фиксированного значения. Таким образом у нас может меняться во времени что угодно: координаты объектов, их цвета и форма. Когда я искал, где же лучше расположить текст "linux" на поверхности буквы "W", мне и пришло в голову анимировать статическую картинку:




Тэги: анимация визуальное графика программирование
+ 4 -
Похожие Поделиться

exelens 27.03.2012 21:06 #
Ограничений на длинну постов нет.
Наверное баг.
lwilis 27.03.2012 21:16 #
я хз, несколько раз создавал заново пост, логинился по новой. Обрезает все равно.
Brodyaga 27.03.2012 22:30 #
Я конечно извиняюсь, но что должно было продемонстрировать видео? :)
lwilis 28.03.2012 01:55 #
Возможности рекомендуемого софта.
Извиняться излишне, конечно.
Daria 02.04.2012 13:51 #
прыгающий сюжет, слабый слог.
lwilis 02.04.2012 17:39 #
месячные?
Daria 06.04.2012 19:46 #
у меня всё хорошо.
lwilis 07.04.2012 03:06 #
То был коммент для сбора пиздолизов. В твоем самочувствии я и не сомневался.
exelens 07.04.2012 17:37 #
не материмся
lwilis 08.04.2012 14:04 #
я очень старался, но попробуй сам подбери годный аналог слову писдолис
Daria 06.04.2012 19:49 #
выкладывай уж свой проект, как ты там наанимировал всё.
lwilis 07.04.2012 03:03 #
Что, простите?
Daria 10.04.2012 06:07 #
проект выкладывай, балбес, не смутное видео результата, а исходник. пускай он говорит за тебя, так как лев толстой из тебя не получился.
lwilis 10.04.2012 08:43 #
я как бы и не претендую на славу классика.
по сабжу: а ты заинтересуй меня. сейчас скучно возиться