var photo;
function preload(){
photo = loadImage("https://i.imgur.com/3TDt7Za.jpg");
}
function setup() {
createCanvas(480, 480);
background(255);
photo.loadPixels();//load the pixels of the underlying photo
}
function draw() {
for(var x = 0; x < width;x+=10){
for(var y = 0; y < height; y+=10){
var c = photo.get(x,y);//stores RGB value of pixel at (x,y) in array c
noStroke();
fill(c);
rect(x,y,10,10);//draw rectangle at (x,y)
var r = c[0];//assign items from the array c to variables
var g = c[1];
var b = c[2];
noStroke();
fill(r-40, g-40, b-40);
rect(x,y,8,8);//draw circle inside the rectangle
noStroke();
fill(r+20, g+20, b+20);
ellipse(x +5,y+5,4,4);
}
}
}
For this assignment I was inspired by Chuck Close’s portraits made up of squares with detail inside them, and wanted to recreate this effect within my portrait. I like how the end result looks a bit like a lego portrait.