Маляка. Кусочки растра в векторном редакторе

   Маляку я увидел среди старых детских рисунков, которые нашла и разбирала внучка.
   Происхождение Маляки в точности не известно. Может быть, и внучка её автор, а может быть, и я сам. В то время, счищая масляные краски с палитры, я практиковал грунтовать ими бумагу под новые этюды. Если это так, то красок для грунтовки, наверное, просто не хватило, вот я и изобразил ими Маляку.

   Сделать с этим изображением мультфильм - сразу пришло мне в голову.
   Уж больно фактуристое было изображение, а масло, впитавшееся в бумагу, создавало впечатление древности и добавляло колорит. Нарочно такое и захочешь, не сделаешь.

   Весь дальнейший процесс вы можете видеть здесь - http://youtu.be/BJJfpfpvMao а сейчас я хочу прояснить некоторые технические стороны этого процесса.

   Чтобы использовать кусочки растрового изображения в векторном редакторе, нужно оформить их в виде особых элементов – Паттернов.
   Все паттерны располагаются в строго определённых местах на одном общем рисунке. Для создания листа с паттернами легче всего использовать обычную программу Паинт. Объявляем в этой программе белый фон прозрачным и, используя процедуру копирования, разносим кусочки растрового изображения по нужным местам. При этом мы должны озаботиться тем, чтобы сохранить места сочленения паттернов между собой – например, если мы делаем туловище, то сохраняем на нем выступы с плечевыми суставами, с тем чтобы налагать начальные точки рук на эти выступы.
    Разумеется, весь фон вокруг переносимого изображения должен быть выбелен. При воспроизведении паттернов только совершенно белый цвет считается прозрачным. А если вам понадобится в изображении белый цвет, то делайте его не совсем белым.

     РАЗЛИНОВКА ЛИСТА

    Совсем необязательно, чтобы лист с паттернами был разлинован, границы между паттернами программой не читаются. Однако, как вы узнаете, куда переносить изображение, если не видите этих границ? Поэтому, перед приготовлением рисунка с паттернами, лист для рисунка нужно разлиновать.
    Разлиновка границ для паттернов делается программой при включённом Редакторе. Лист имеет большой размер и поэтому этот размер нужно включить кнопкой «размер рисунка» на верхней панели. Если лист с паттернами вы приготовляете заново, то установите на рисунке белый фон. Затем устанавливаете цвет разлиновки и начинаете кликать по чистой горизонтальной кнопочке на верхней панели – по той, которой вы загружаете фактурный фон при рисовании некоторыми кистями. В момент появления на кнопочке значков ++++ лист будет разлинован.

     ЗАГРУЗКА ПАТТЕРНОВ

   Но вот, лист с паттернами формата bmp у вас уже есть, и вы загружаете его в программу или через систему рис1-рис9 или через общий буфер Виндос, кликнув оранжевую полосочку на краю верхней панели.
   Теперь вам нужно скопировать рисунок с паттернами на числовое Поле_0 – то самое, которое используется и для фактурного фона. Так же, как это делается при загрузке фактурного фона, мы кликаем по кнопочке правой кнопкой мыши и ждём несколько секунд. В знак того, что паттерны загрузились, кнопочка окрашивается в малиновый цвет.

     СОЗДАНИЕ ПАТТЕРНОВ

   Паттерны создаются в режиме рисования – кнопочка «закр» левее меню Редактора должна иметь жёлтый цвет. Кнопку опций рисования ставим в положение с буквой «а» на жёлтом поле, кнопку опций черчения – в положение ||| - редкие полосочки, а на кнопке Градиент ставим цифру 6.
   Если опции установлены правильно, то на информационной строке вверху появится слово «Паттерны».
   Поля для паттернов нумеруются по строкам 1-6 сверху вниз и по столбцам 0-9 слева направо. Эти паттерны имеют размер 100х100 пиксел. Например, самый правый паттерн с собачкой на иллюстрации имеет номер 19.
   Имеются также три больших паттерна размером 200х200, и они имеют номера 70, 80 и 90. Номера паттернов задаются цифрами на компонентах «зелёный» и «красный» на верхней панели, но чтобы не заморачиваться с этими цифрами, их можно устанавливать автоматически.
   Автоматическая установка номера паттерна работает, если на малиновой кнопке загрузки стоят значки ++++ или оооо. Установим, к примеру, ++++ и кликнем по белому фону, окружающему нужный нам паттерн, правой кнопкой мыши. Мы сразу увидим, что на кнопках «зелёной» и «красной» компонент появилось то, что нам нужно.
   Теперь, опустим стилус на начальную точку паттерна (это – та точка, за которую мы будем его двигать, и вокруг которой будем его поворачивать), проведём стилусом в центр паттерна (центр лица, если паттерн изображает голову) или в иную характерную точку (пальцы руки, если паттерн изображает собой руку), и там оторвём стилус от планшета.
   В результате, у нас на поверхности паттерна появятся две указывающие точки, и если нас это устраивает, но кликаем кнопку «закр» и записываем созданный паттерн в строку массива G. А если что не так, то кликаем «cls» и рисуем указывающие точки заново.
   Иногда нужно очень точно связать несколько паттернов перемещая их как единое целое. Это бывает проще сделать, если создавать эти паттерны с опцией оооо на малиновой кнопке – тогда вторая указывающая точка попадает точно в центр паттерна, независимо от того, где мы оторвём стилус.

     КАК ВЫГЛЯДЯТ ПАТТЕРНЫ В ГРАФИЧЕСКОМ МАССИВЕ

Элементы, изображающие Маляку с раскрытым ртом, в массиве G выглядят так:

X  просмотр массива G  31-кр.Безье 36,37,38-Фигура 16-Паттерн  Nстрок= 12
__ 13-Прям-к 14-Круг 22-Прямая 25-Веер 26-Мног-к 27-Полилиния 29-Ломаная_

        1>     16  336  246  1 -86  1000  0  70  28  5050  3
        2>     16  345  334  1 -50  1000  0  25  28  5050  3
        3>     16  345  353  2 -23  1000  0  26  28  5050  3
        4>     16  317  262 -25  15  1000  0  15  28  5050  3
        5>     16  376  265  25  5  1000  0  16  28  5050  3
        6>     16  331  344  0  21  1000  0  17  28  5050  3
        7>     16  370  342  6  22  1000  0  18  28  5050  3
        8>     16  36  312  2  21  1000  0  27  28  5050  3  #-1000
        9>     16  86  308  4  24  1000  0  28  28  5050  3  #-1000
        10>     16  214  430  0 -36  1064 -200  19  28  5056  3
        11>     37  326  189  12  1  0 96  30  29  5050  3
   12      0  326  189  341  180  353  184  361  186  28 -93

   Логотип 16 на титульных строках обозначает Паттерн.
   На первой титульной строке у нас находится голова Маляки, на 2-й и 3-й – туловище и юбка, далее – левая и правая рука, левая и правая нога (это если смотреть на рисунок, а не на нас со стороны Маляки).
   Ноги на строках 8 и 9, хоть и присутствуют в графике, но они невидимы, то есть, не рисуются (и не перемешаются). Они, как бы запасные элементы, отмеченные отрицательным номером на последней позиции. Хотя к такому способу замены элементов можно было бы и не прибегать – номер привязки паттерна циклически меняется по строкам/столбцам, если, выбрав паттерн, нажимать клавишу «х» русское на нижнем/верхнем регистре.
   
   Давайте рассмотрим числа на 10-й титульной строке. Этот паттерн изображает собачку. За логотипом 16 идут числа 214 430 – это X,Y координаты начальной точки паттерна.
   0 -36 это координаты второй указываемой точки паттерна, относительно первой. Появившись вначале, они затем не меняются на всём времени существования паттерна.
   1064 – масштаб (число увеличенное в тысячу раз). То есть, наша собачка рисуется размером на 6.3 процента большим, чем тот, с которым она изображена на паттерне.
   -200 – изображение развёрнуто на 20 градусов против часовой стрелки.
   -19 – номер паттерна. Строка 1, столбец 9.
   5056 – по координате X паттерн не изогнут. Но он слегка изогнут по Y.
   3 – паттерн не отражён. В случае отражения справа налево тут стояло бы число 1.

   Титульная строка 11 (логотип 27) описывает фигуру Безье с заливкой. Фигура эта, однако, цветом не заливается, поскольку на поз.5 стоит 0 – установленное значение Плотности. Поэтому последующие два числа, указывающие на начальную точку заливки, никакого значения не имеют.
   Зато имеет значение индивидуальный тип кривой на 10-й позиции дополнительной строки. Там стоит число -93. Цифра 3 означает, что изображается рот. Цифра 9 – этот рот широко разинут.
   На иллюстрации вы можете видеть кадры, на которых Маляка раскрывает рот, а собачка, отражается справа налево и меняет направление своего движения.

     ВТОРОЙ ЛИСТ ПАТТЕРНОВ

   Паттерны, созданные описанным выше способом, читаются с Поля_0. Есть возможность разместить паттерны на листе Поле_1. Загрузка листа на Поле_1 проводится с цифрой 1 на кнопочке ниже кнопки Плотность. С этой же опцией паттерны и создаются.
   Чтобы изменить привязку паттерна с Поля_1 на Поле_0 и обратно, нужно выставить цифру 0 или 1 на кнопке Плотность и кнопкой «закр» закрепить выбранный паттерн при положении «ф» переключателя «о/ф».
   То, что Паттерн берётся не с Поля_0, а с Поля_1 показывается единицей в поз.9 титульной строки. Если бы голова Маляки размещалась бы на Поле_2, то там бы стояло не 5050, а 15050, или ещё какое число, если бы Маляка склонила бы свою голову налево или направо.
__________
26.12.2020


Рецензии