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.



RGB Cube
by fry <http://benfry.com>

The three primary colors of the additive color model are red, green, and blue. This RGB color cube displays smooth transitions between these colors.

Created 25 October 2002

   
// RGB Cube 
// by fry <http://benfry.com> 

float xmag, ymag = 0; 
float newXmag, newYmag = 0; 
 
void setup() 
{ 
  size(200, 200, P3D); 
  noStroke(); 
  colorMode(RGB, 1); 
} 
 
void draw() 
{ 
  background(0.5, 0.5, 0.45); 
  
  pushMatrix(); 
 
  translate(width/2, height/2, -30); 
  
  newXmag = mouseX/float(width) * TWO_PI; 
  newYmag = mouseY/float(height) * TWO_PI; 
  
  float diff = xmag-newXmag; 
  if (abs(diff) >  0.01) { xmag -= diff/4.0; } 
  
  diff = ymag-newYmag; 
  if (abs(diff) >  0.01) { ymag -= diff/4.0; } 
  
  rotateX(-ymag); 
  rotateY(-xmag); 
  
  scale(50); 
  beginShape(QUADS); 
 
  fill(0, 1, 1); vertex(-1,  1,  1); 
  fill(1, 1, 1); vertex( 1,  1,  1); 
  fill(1, 0, 1); vertex( 1, -1,  1); 
  fill(0, 0, 1); vertex(-1, -1,  1); 
 
  fill(1, 1, 1); vertex( 1,  1,  1); 
  fill(1, 1, 0); vertex( 1,  1, -1); 
  fill(1, 0, 0); vertex( 1, -1, -1); 
  fill(1, 0, 1); vertex( 1, -1,  1); 
 
  fill(1, 1, 0); vertex( 1,  1, -1); 
  fill(0, 1, 0); vertex(-1,  1, -1); 
  fill(0, 0, 0); vertex(-1, -1, -1); 
  fill(1, 0, 0); vertex( 1, -1, -1); 
 
  fill(0, 1, 0); vertex(-1,  1, -1); 
  fill(0, 1, 1); vertex(-1,  1,  1); 
  fill(0, 0, 1); vertex(-1, -1,  1); 
  fill(0, 0, 0); vertex(-1, -1, -1); 
 
  fill(0, 1, 0); vertex(-1,  1, -1); 
  fill(1, 1, 0); vertex( 1,  1, -1); 
  fill(1, 1, 1); vertex( 1,  1,  1); 
  fill(0, 1, 1); vertex(-1,  1,  1); 
 
  fill(0, 0, 0); vertex(-1, -1, -1); 
  fill(1, 0, 0); vertex( 1, -1, -1); 
  fill(1, 0, 1); vertex( 1, -1,  1); 
  fill(0, 0, 1); vertex(-1, -1,  1); 
 
  endShape(); 
  
  popMatrix(); 
} 
 







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