Processing:Справочник языка Processing/PImage/get()

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


get() [1]

Класс

PImage

Обозначение

get()

Описание

Считывает цвет отдельного пикселя или фрагмент изображения. Если никаких параметров не указано, get() вернет все изображение. Если вам нужно извлечь цвет одного пикселя, укажите параметры x и y. Если вам нужно извлечь фрагмент изображения, укажите дополнительные параметры width и height. При захвате фрагмента изображения параметры x и y задают координаты левого верхнего угла изображения – независимо от текущего режима отрисовки изображений, заданного с помощью метода imageMode().

Если запрашиваемый пиксель находится за пределами дисплейного окна, get() вернет черный цвет. Метод get() возвращает только значения типа RGB, и они будут подогнаны под текущие числовые диапазоны цветовых данных. То есть, даже если вы нарисовали фигуру при помощи colorMode(HSB), значения, возвращаемые get(), все равно будут иметь формат RGB.

Считывание цвета одного пикселя с помощью get(x, y) – это, возможно, и просто, но не так быстро, как считывание цветовых данных напрямую из массива pixels[]. Эквивалентом get(x, y) является конструкция pixels[y*width+x]. Более подробно читайте в статье о массиве pixels[].

Синтаксис

pimg.get(x, y)
pimg.get(x, y, width, height)
pimg.get()

Параметры

pimg    любой объект типа PImage. Тип данных  PImage
x       координата X пикселя. Тип данных  int
y       координата Y пикселя. Тип данных  int
width   ширина фрагмента изображения (в пикселях). Тип данных  int
height  высота фрагмента изображения (в пикселях). Тип данных  int

Возвращаемое значение

Тип данных  int или объект PImage.

Пример

№1


PImage mountains = loadImage("rockies.jpg");
background(mountains);
noStroke();
color c = mountains.get(60, 90);
fill(c);
rect(25, 25, 50, 50);

№2


PImage mountains = loadImage("rockies.jpg");
background(mountains);
PImage newMountains = mountains.get(50, 0, 50, 100); 
image(newMountains, 0, 0);

См.также

Внешние ссылки