xxxxxxxxxx
PImage img;
int tick;
void setup() {
size(2560, 1440);
background(0, 0, 20);
imageMode(CENTER);
img = loadImage("iridescence.jpg");
loadPixels();
}
void draw() {
background(0, 0, 20);
//image(img, width / 2, height / 2, 640 + sin(tick / 25) * 10, 360 + sin(tick / 25) * 10);
if (img.width == 0) {
return;
}
for (int y = 0; y < img.height; y++) {
for (int x = 0; x < img.width; x++) {
int loc = x + y * img.width;
color pixC = img.pixels[loc];
float r = red(pixC);
float g = green(pixC);
float b = blue(pixC);
if (keyPressed) {
if (key == '1') {
r = 255 - r;
}
if (key == '2') {
g = 255 - g;
}
if (key == '3') {
b = 255 - b;
}
if (key == '4') {
r = g = b
}
if (key == '5') {
r = 0;
}
if (key == '6') {
g = 0;
}
if (key == '8') {
b = 0;
}
if (key == '9') {
if (r + g + b < 200 || r + g + b > 350) {
r = 255;
g = 255;
b = 255;
} else {
r = 0;
g = 0;
b = 0;
}
}
if (key == '0') {
r = (x / 20) + r;
g = (x / 10) + g;
}
if (key == 'q') {
tr = r;
tg = g;
tb = b;
r = (tg / tb) * 100;
g = (tr / tb) * 100;
b = (tr / tg) * 100;
}
if (key == 'w') {
r += sin(x) * 50;
g += sin((x + y) / 2) * 50;
b += sin(y) * 50;
}
}
pixCN = color(r, g, b);
pixels[loc] = pixCN;
}
}
tick++;
updatePixels();
}