Градиенты в PyCairo [Урок №5]

автор

В данном разделе мы рассмотрим градиенты. Также мы упомянем линейные и радиальные градиенты. В компьютерной графике градиентом называют плавное перетекание теней от светлых к темным, или перетекание одного цвета к другому. В программах для работы с двухмерной графикой и приложениях для рисования, градиенты используются как для создания наполненного цветом фона и специальных эффектов, так и для создания игры света и тени.

Линейные градиенты

Линейные градиенты являются смесью цветов или цветов теней, отбрасываемых вдоль линии. В PyCairo градиенты представлены классом cairo.LinearGradient .

В данном примере были созданы прямоугольники, заполненные линейными градиентами.

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

Мы выбираем ограничения цвета для создания нашего градиентного шаблона. В данном случае, градиент сочетает в себе смесь чёрного и желтого цветов. Добавив два ограничения черному и один желтому, мы получаем горизонтальный градиентный шаблон.

Что означают эти ограничения?

В нашем случае, выбранный нами черный цвет ограничен 1\10 размера. После чего мы начинаем постепенно окрашивать объект в желтый, который сгущается в центральной части фигуры. Желтый цвет ограничен 9\10 частью его размера, в том месте, где снова начинается черный, и так до конца.

Радиальные градиенты

Радиальными градиентами называют смешивание двух цветов или цвета и тени между двумя окружностями. Класс cairo.RadialGradient применяется для создания радиальных градиентов в PyCairo.

В данном примере мы нарисовали два радиальных градиента.



Мы нарисовали окружность и заполнили её содержимое радиальным градиентом. Радиальный градиент определяется двумя окружностями. Метод add_color_stop_rgba()  определяет цвет. Мы можем экспериментировать с позицией с позицией окружностей или длиной их радиуса. На первом примере градиента, мы создали объект, напоминающий трёхмерную фигуру.

В данном примере окружности, определяющие радиальный градиент и созданный нами круг имеют общую центральную точку.

Вам может быть интересно

Scroll Up