Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- PImage img; // The source image
- int cellsize = 2; // Dimensions of each cell in the grid
- int columns, rows; // Number of columns and rows in our system
- void setup() {
- size(720, 720, P3D);
- img = loadImage("/Users/Miles/Desktop/Jeremy Mann/IMG_7044.jpg"); // Load the image
- columns = img.width / cellsize; // Calculate # of columns
- rows = img.height / cellsize; // Calculate # of rows
- }
- void draw() {
- background(0);
- // Begin loop for columns
- for ( int i = 0; i < columns; i++) {
- // Begin loop for rows
- for ( int j = 0; j < rows; j++) {
- int x = i*cellsize; // x position
- int y = j*cellsize; // y position
- int loc = x + y*img.width; // Pixel array location
- color c = img.pixels[loc]; // Grab the color
- // Calculate a z position as a function of mouseX and pixel brightness
- float z = (mouseX*3 / float(width)) * brightness(img.pixels[loc]);
- // Translate to the location, set fill and stroke, and draw the rect
- pushMatrix();
- translate(x, y, z);
- fill(c, 204);
- noStroke();
- rectMode(CENTER);
- rect(0, 0, cellsize, cellsize);
- popMatrix();
- }
- }
- }
Add Comment
Please, Sign In to add comment