Выкладываю версию 0.03 биотечки-функции drw ( контейнер ) для языка pixilang v.30rc.
В этой версии появились команды repeat n (...) и back (...). Добавлен контроль ошибок в строке с графическими командами. Ошибки выводятся в консоль.
Перечень реализованных команд:
скачать библиотечку с примерами можно здесь
среда, 13 июля 2011 г.
среда, 6 июля 2011 г.
Рисуем как в Logo (функция drw v.001 для pixilang 3.0)
По просьбе Михаила Разуваева (одного из создателей pixilang) выкладываю 001, еще сыроватую и пока не полную по функционалу, версию функции drw(). Пока нечто путнее нарисовать с её помощью проблематично, но поиграть с ней уже можно =)
Цель функции: рисовать в pixilang 3.0rc1 как в языке программирования Logo.
Система координат: обычная для 2D рисования. Точка с координатами 0,0 находится в верхнем-левом углу pixilang-экрана.
Особенности: в функции используются имена переменных и функций с префиксом drw_ поэтому для нормальной работы ф-и в программе лучше не использовать переменные с таким префиксом.
Аргументы функции: аргумент один - текстовый контейнер с графическими командами и их параметрами. Команды с параметрами можно разделять пробелами (можно и не разделять), но использовать символ "ввод" в строке пока нельзя (это в планах). Вы можете делать сколько угодно таких строк с командами рисования и вызывать их drw ( имя_строки ), при отрисовке очередной строчки. В качестве аргументов для команд используются только положительные числа. Последняя позиция пера, его тип, угол и цвет сохраняются до следующего вызова ф-и.
Реализованные команды:
Операнды (только для понимания)
тип операнда:
n integer
fl float
Команды:
мнемоника описание
pos n,n перенести перо в позицию n,n
(угол поворота пера при этом станет равным 0.0)
p n задать тип пера: 0 прозрачное ( без следа),
1 простое ( тонкая линия 1 пиксель )
cl n,n,n задать цвет пера r,g,b
f n рисовать вперед линию в n пикселей
сw fl поворот по часовой стрелке на угол fl в градусах
сcw fl поворот против часовой стрелки
sc fl масштаб ( scale factor ) 1.0 = 100%
( длина линий = длина * scale factor )
Параметры по умолчанию: тип пера = 1, координаты пера = 0,0
угол поворота пера = 0.0 (линия слева-направо), цвет пера =белый
Пример использования функции в программе:
include "libs/drawlib.pixi"
drw_once = 0 //for once drawlib variables definition
//-------------------------------------------------------
test = "f100"
drw ( test )
frame ( 3000 )
Брать библиотечку с примерами прошу здесь: скачать с Яндекс - народа
В планах:
Добавить команды:
rep n(...) n раз повторить последовательность, ограниченную ()
ret (...) вернуть значения угла и координат после выполнения
действий в ()
Сделать:
-обработку ошибок текстовой строки с командами
-возможность разрывать (переносить) строку символом "ввод"
-возможность использование в строке команд в качестве аргументов определенных числовых переменных языка pixilang.
В "дальних" планах:
-закрашивание замкнутого контура
-градиентное закрашивание замкнутого контура
суббота, 2 июля 2011 г.
Про блог
Этот блог - про мои эксперименты с программированием на pixilang (старые версии, релиз-кандидат новой версии 3.0, Wiki-документация на русском языке), java и прочие около-IT вещи.
Подписаться на:
Сообщения (Atom)