FAQ
 
 
Cover  \ Exhibition  \ Learning  \ Reference  \ Download  \ Discourse   
    Examples \ Tutorials \ Courses & Workshops
 
   
 
 
Examples for Processing (BETA) version 91+. If you have a previous version, use the examples included with your software. If you see any errors or have comments, please let us know.



Pixel Array
by REAS <http://reas.com>

Click and drag the mouse up and down to control the signal and press and hold any key to see the current pixel being read. This program sequentially reads the color of every pixel of an image and displays this color to fill the window.

Created 10 August 2002

   
// Pixel Array 
// by REAS <http://reas.com> 

PImage a; 
int[] aPixels; 
int direction = 1; 
boolean onetime = true; 
float signal; 
 
void setup() 
{ 
  size(200, 200); 
  aPixels = new int[width*height]; 
  noFill(); 
  stroke(255); 
  framerate(30); 
  a = loadImage("ystone08.jpg"); 
  for(int i=0; i<width*height; i++) { 
    aPixels[i] = a.pixels[i]; 
  } 
} 
 
void draw() 
{ 
  if (signal > width*height-1 || signal < 0) { 
    direction = direction * -1; 
  } 
 
  if(mousePressed) { 
    if(mouseY > height-1) { mouseY = height-1; } 
    if(mouseY < 0) { mouseY = 0; } 
    signal = mouseY*width+mouseX; 
  } else { 
    signal += (0.33*direction);  
  } 
  
  if(keyPressed) { 
    loadPixels(); 
    for (int i=0; i<width*height; i++) { 
      pixels[i] = aPixels[i];  
    } 
    updatePixels(); 
    rect(signal%width-5, int(signal/width)-5, 10, 10); 
    point(signal%width, int(signal/width)); 
  } else { 
    loadPixels(); 
    for (int i=0; i<width*height; i++) { 
      pixels[i] = aPixels[int(signal)]; 
    } 
    updatePixels(); 
  } 
} 
 
 
 
 
 
 







   
  Processing is an open project initiated by Ben Fry and Casey Reas  
  © Info