Processing:Справочник языка Processing/PImage/blend()
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
blend() [1]
Класс
PImage
Обозначение
blend()
Описание
Накладывает фрагмент пикселей на изображение, заданное в параметре pimg. В копиях накладываемых изображений хранится полная информация альфа-канала. Кроме того, метод blend() поддерживает разные режимы наложения пикселей исходного изображения (A) на пиксели «посадочной площадки» (B):
- BLEND – линейная интерполяция цветов: C = A*коэффициент + B
- ADD – аддитивное наложение с отсечением белого: C = min(A*коэффициент + B, 255)
- SUBTRACT – субтрактивное наложение с отсечением черного: C = max(B - A*коэффициент, 0)
- DARKEST – отображаются только самые темные цвета: C = min(A*коэффициент, B)
- LIGHTEST – отображаются только самые светлые цвета: C = max(A*коэффициент, B)
- DIFFERENCE – вычитает цвета из «посадочной площадки»
- EXCLUSION – то же самое, что и DIFFERENCE, только в меньшей степени
- MULTIPLY – умножает цвета; результат всегда будет темнее
- SCREEN – противоположность MULTIPLY, использует инвертированные значения цветов
- OVERLAY – комбинирует MULTIPLY и SCREEN; применяет MULTIPLY на темные участки, а SCREEN – на светлые участки
- HARD_LIGHT – если выше 50% серого, используется SCREEN, а если ниже – MULTIPLY
- SOFT_LIGHT – комбинирует DARKEST и LIGHTEST; работает аналогично OVERLAY, но не так жестко
- DODGE – осветляет светлые цвета и усиливает контраст, игнорирует темные цвета; в Photoshop и Illustrator называется Color Dodge («Осветление основы»)
- BURN – применяется к темным цветам, усиливает контраст, игнорирует светлые участки; в Photoshop и Illustrator называется Color Burn («Затемнение основы»)
Все режимы в качестве коэффициента наложения используют альфа-информацию (самый старший бит) накладываемого изображения. Если «посадочная площадка» и накладываемое изображения разных размеров, размер накладываемого изображения будет автоматически изменен, чтобы соответствовать размеру «посадочной площадки». Если параметра src указано не будет, в качестве накладываемого изображения будет использовано дисплейное окно.
В Processing версии 0149 этот метод игнорирует настройки imageMode().
Синтаксис
pimg.blend(sx, sy, sw, sh, dx, dy, dw, dh, mode)
pimg.blend(src, sx, sy, sw, sh, dx, dy, dw, dh, mode)
Параметры
pimg – любой объект типа PImage. Тип данных – PImage
src – накладываемое изображение. Тип данных – PImage
sx – координата X левого верхнего угла накладываемого изображения. Тип данных – int
sy – координата Y левого верхнего угла накладываемого изображения. Тип данных – int
sw – ширина накладываемого изображения. Тип данных – int
sh – высота накладываемого изображения. Тип данных – int
dx – координата X левого верхнего угла «посадочной площадки». Тип данных – int
dy – координата Y левого верхнего угла «посадочной площадки». Тип данных – int
dw – ширина «посадочной площадки». Тип данных – int
dh – высота «посадочной площадки». Тип данных – int
mode – режим наложения; возможные варианты – BLEND, ADD, SUBTRACT, LIGHTEST, DARKEST, DIFFERENCE, EXCLUSION, MULTIPLY, SCREEN, OVERLAY, HARD_LIGHT, SOFT_LIGHT, DODGE, BURN. Тип данных – int
Возвращаемое значение
void
Пример
№1
PImage mountains = loadImage("rockies.jpg");
PImage bricks = loadImage("bricks.jpg");
mountains.blend(bricks, 0, 0, 33, 100, 67, 0, 33, 100, ADD);
image(mountains, 0, 0);
image(bricks, 0, 0);
№2
PImage mountains = loadImage("rockies.jpg");
PImage bricks = loadImage("bricks.jpg");
mountains.blend(bricks, 0, 0, 33, 100, 67, 0, 33, 100, SUBTRACT);
image(mountains, 0, 0);
image(bricks, 0, 0);
№3
PImage mountains = loadImage("rockies.jpg");
PImage bricks = loadImage("bricks.jpg");
mountains.blend(bricks, 0, 0, 33, 100, 67, 0, 33, 100, DARKEST);
image(mountains, 0, 0);
image(bricks, 0, 0);
№4
PImage mountains = loadImage("rockies.jpg");
PImage bricks = loadImage("bricks.jpg");
mountains.blend(bricks, 0, 0, 33, 100, 67, 0, 33, 100, LIGHTEST);
image(mountains, 0, 0);
image(bricks, 0, 0);
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |