//Jai Sawkar
//jsawkar
//Project 9: Portrait
//Section C
function preload() {
var imgURL = "https://i.imgur.com/4e3vWfI.jpg?1" //image of jaclny & sophia
bImage = loadImage(imgURL);
}
function setup() {
createCanvas(480, 480);
background('black')
bImage.loadPixels(); //loads pixels from image
frameRate(1000000); //speed of picture
}
function draw() {
var px = random(width);
var py = random(height);
var sx = random(0, 240); //'sophia' on X axis
var sy = random(height); //'sophia' on Y axis
var jx = random(240, 480); //'jac' on X axis
var jy = random(height); //'jac' on y axis
////ix & iy calulates the closest int value that is less than or equal to the value of the parameter for the pixels
var ix = constrain(floor(px), 0, width - 1);
var iy = constrain(floor(py), 0, height - 1);
var colXY = bImage.get(ix, iy); //determines color based on x & y pixels of image
noStroke();
fill(colXY); //fill based on x & y pixels of image
ellipse(px, py, 5);
textFont('FUTURA');
textSize(2);
text("Sophia", sx, sy) //randomly prints Sophia on Sophia's side of Canvas
textSize(3);
text("Jac", jx, jy) //randomly prints Jac on Jaclyn's side of Canvas
}
For this project, I used a picture I took 2 years ago of two of my best friends, Jaclyn & Sophia. Along with having the picture generated with dots, I wanted some aspect of it to be more personalized as well, so I split the canvas to allow their names to make up the picture on their side of the canvas. Below are two screenshots of the process, and the original photo as well!