Живая капля акварели 2
Кисть №2, о которой рассказывалось тут http://www.proza.ru/2019/07/27/148 , работает с пятном, имеющим непрозрачный керн и прозрачный ореол вокруг него.
Следы этой кисти в режиме "гуашь" показаны на иллюстрации слева. Маленький керн посередине имеет диаметр 3 пикселя, но можно сделать его и побольше.
Вне зависимости от размера керна, в режиме акварель этот керн частично размывается ореолом, и распространяется по ореолу в виде хлопьев, или пигментных зёрен, довольно хаотично двигающихся в капле акварели и перетекающих в ту сторону, куда направлен вектор стекания.
Напомню, что стекание акварели создаётся за счёт постановки дополнительного пикселя в стороне от основного, в то время, как основной очерчивает расходящиеся круги, образующие пятно закраски.
____________
АЛГОРИТМ, этот раздел можно пропустить.
For I = Im To Im2
X = RXY(I, 1) + Xm: Y = RXY(I, 2) + Ym
R = RXY(I, 0): A = RK20(R)
C = Form1.Picture1.Point(X, Y): If C = Cb Then C = -1
If C > 0 Then C = ccRGB(OldC, C, A): C = C Or &H10101: Form1.Picture1.PSet (X, Y), C
If C > 0 And AG = 1 Then Form1.Picture1.PSet (X + VX, Y + VY), C: Call Nswap
Next I
здесь из массива RXY( , ) извлекаются координаты пикселя для закрашивания, и к ним прибавляются координаты указателя мыши. Цвет пикселя C, взятый с экрана, анализируется, и в том случае, если он совпадает с цветом маски Cb, пиксель пропускается и не закрашивается.
Если маска отсутствует, то процесс протекает беспрепятственно. Заданный активный цвет OldC разбавляется цветом фона C в пропорции A. Таким образом находится тот цвет, которым будет закрашен пиксель.
Само значение A этой пропорции зависит от радиуса R, а радиус извлекается из массива, в который эти значения были предварительно помещены (см. http://www.proza.ru/2019/07/06/1273 ).
Вот собственно и всё. Дополнительный пиксель разыгрывается подпрограммой Nswap, и ставится только в режиме акварели (AG=1) со смещением на вектор затекания (VX, VY). Составляющие этого вектора лежат на сегменте от -2 до 2.
_________________
ПРОДОЛЖЕНИЕ
Пятно акварели будет стремиться течь по пикселям в ту сторону, с какой стороны был поставлен дополнительный пиксель. Всего таких направлений может быть выбрано 16.
Ну, хорошо, а можно ли сделать так, чтобы акварель текла не столь определённо - не строго вниз, а вниз, а потом немножко правее, потом левее и снова вниз?
Тогда и след от капли акварели станет более естественным.
Нет ничего проще - будем разыгрывать эти направления. Одно единственное направление разыгрывать не к чему, а вот два можно разыграть. Можно разыграть 3, 4, 5, 7 и 9 пикселей, примыкающих к основному направлению стекания. Именно так в программе и делается.
Чем большее число пикселей принимает участие в стекании акварели, тем менее консолидированным оказывается направление стекания. Соответственно меняется и цвет. Менее консолидированный по направлению стекания след оказывается более насыщенным пигментом. Эти следы кисти, сделанные в направлении затекания, вы можете видеть в верхней части иллюстрации.
Любопытно, а можно ли сделать каплю, которая бы не стремилась куда-либо течь, а только бы растекалась чуть-чуть по плоскости? Как если бы мы рисовали акварелью на горизонтальной поверхности листа.
Сделать так можно. Будем разыгрывать не пиксели, примыкающие к определённому направлению, а все 16 направлений, выбирая их наугад, но делая между выбором некую, тоже случайную паузу, связав её опять же с задаваемым значением консолидации.
С равномерностью растекания вроде бы понятно, но пауза зачем делается?
Пауза делается, и даже регулируется потому, что результат, как оказывается, будет очень зависеть от её длительности. В самом деле, как только направление затекания выбрано, пигмент в капле тут же начинает перетекать по этому направлению. Мы ведём стилусом по рисунку, пигмент оставляет свой след, а вектор затекания долго не меняется. След в этом случае распадается на крупные полукруглые фрагменты - отпечатки контура капли.
Совсем другое дело, когда консолидация мала, и направление затекания разыгрывается часто. След капли будет похожим на след пробежавшего ежика с растопыренными иголками. Следы ненаправленного стекания акварели с разной степенью консолидации вы можете видеть в средней части иллюстрации.
Особый случай представляет консолидация, равная 1. Направление стекания в этом случае не разыгрывается вовсе. Вектор затекания полагается равным нулю, и дополнительный пиксель ставится на то же место, что и основной. Это то же самое, как если бы он не ставился вовсе. Капля в этом случае утрачивает свои затекающие свойства, но прозрачность её, разумеется остаётся. Такие следы вы также можете видеть на иллюстрации.
Таким образом, в зависимости от настройки, акварельная кисть может создавать разные, и очень интересные фактуры.
Снизу, в правой части иллюстрации показаны следы того, как капля акварели растворяет чёрный пигмент напечатанного текста. Совсем, как настоящая водяная капля, если бы типографская краска была бы растворима в воде.
Меня спрашивают, а действительно ли подобная акварельная кисть удобна для рисования?
Да, удобна*, я сделал на пробу пару рисуночков в своём редакторе. Их и показываю. Голубенький цветочек был сделан с помощью чёрной маски - сначала я рисовал его белым на не совсем чёрном фоне, а затем сделал фон чёрным, и расцветил цветочек незатекающей краской, используя эту же самую кисть №2. Незатекающая краска к чёрному не пристаёт.
Это свойство реализуется знаком "больше" в приведённом выше алгоритме, вместо знака "больше или равно".
____________
28.07.2019
* Как ко всему новому, к работе с затекающей акварелью нужно привыкнуть. Нужно быть готовым к тому, что она размывает краски фона. Желая изменить тон и делая мазок, надо понимать, что помимо добавления краски этот мазок размоет фон, и пигмент фона, смешавшись с пигментом краски, стечёт на край мазка, а центр мазка не совсем предсказуемо изменит светлоту своего тона.
Но, как я сказал, к подобным особенностям мокрой акварели нужно привыкнуть. Если работать не очень контрастными красками, то всё довольно просто – вместо того, чтобы уравнивать тон соседних мазков растушёвкой (приём, применяемый в технике пастели, но никак не в акварели), я, даже не касаясь поверхности планшета, нажимаю кнопку стилуса над одним мазком, перевожу стилус на другой мазок и отпускаю кнопку над ним. И ву-а-ля, получаю промежуточный цвет и этим цветом делаю мазок в промежутке между мазками фона. Куда стечёт краска по этому мазку, меня не особенно волнует, она стечёт красиво, и тон получится верный.
Вопрос удобно ли работать акварелью, из того же разряда, что и вопрос удобно ли изъясняться стихами. Да, если не умеешь, то неудобно. Но когда этим мастерством овладеешь, то откроешь для себя путь к неожиданным красотам, о которых и не подозревал прежде.
Свидетельство о публикации №119072900890
Маштаков 29.07.2019 12:26 Заявить о нарушении
Ирина Петал 02.08.2019 10:26 Заявить о нарушении
Сегодня скачал фото - незабудки на окне, и начал рисовать.
Вот тут можно посмотреть, как начало получаться - http://yadi.sk/i/T6uAbn37sitcRA
Фото - справа, а рисую я слева. Кисть №4, а для тонких линий обычное рисование в режиме зачерчивания веером. Баночка с водой вроде хорошо получилась.
Но рисунок я буду ещё доделывать.
Что могу сказать? Рисование оказалось очень интересным делом. Сам процесс затягивает.
Маштаков 09.08.2019 14:37 Заявить о нарушении
Ирина Петал 09.08.2019 14:42 Заявить о нарушении
Геннадий Маков 09.08.2019 20:51 Заявить о нарушении