mirror of
https://github.com/dyne/FreeJ.git
synced 2026-02-06 04:59:16 +01:00
fix and debug of numeric conversions in javascript, more progress on the Cairo layer, more processing test scripts still a pending problem with visualization on most scripts so far only ventaglio.pjs works...
67 lines
2.3 KiB
Plaintext
67 lines
2.3 KiB
Plaintext
// All Examples Written by Casey Reas and Ben Fry
|
|
// unless otherwise stated.
|
|
int segs = 12;
|
|
int steps = 6;
|
|
float rotAdjust = radians(360.0/segs/2.0);
|
|
float radius = 95.0;
|
|
float segWidth = radius/steps;
|
|
float interval = TWO_PI/segs;
|
|
int SHADE = 0;
|
|
int TINT = 1;
|
|
|
|
void setup(){
|
|
size(200, 200);
|
|
background(127);
|
|
smooth();
|
|
ellipseMode(CENTER_RADIUS);
|
|
noStroke();
|
|
// you can substitue TINT for SHADE argument
|
|
createWheel(width/2, height/2, SHADE);
|
|
}
|
|
|
|
void createWheel(int x, int y, int valueShift){
|
|
if (valueShift == SHADE){
|
|
for (int j=0; j<steps; j++){
|
|
color[]cols = {
|
|
color(255-(255/steps)*j, 255-(255/steps)*j, 0),
|
|
color(255-(255/steps)*j, (255/1.5)-((255/1.5)/steps)*j, 0),
|
|
color(255-(255/steps)*j, (255/2)-((255/2)/steps)*j, 0),
|
|
color(255-(255/steps)*j, (255/2.5)-((255/2.5)/steps)*j, 0),
|
|
color(255-(255/steps)*j, 0, 0),
|
|
color(255-(255/steps)*j, 0, (255/2)-((255/2)/steps)*j),
|
|
color(255-(255/steps)*j, 0, 255-(255/steps)*j),
|
|
color((255/2)-((255/2)/steps)*j, 0, 255-(255/steps)*j),
|
|
color(0, 0, 255-(255/steps)*j),
|
|
color(0, 255-(255/steps)*j, (255/2.5)-((255/2.5)/steps)*j),
|
|
color(0, 255-(255/steps)*j, 0),
|
|
color((255/2)-((255/2)/steps)*j, 255-(255/steps)*j, 0) };
|
|
for (int i=0; i< segs; i++){
|
|
fill(cols[i]);
|
|
arc(x, y, radius, radius, interval*i+rotAdjust, interval*(i+1)+rotAdjust);
|
|
}
|
|
radius -= segWidth;
|
|
}
|
|
} else if (valueShift == TINT){
|
|
for (int j=0; j<steps; j++){
|
|
color[]cols = {
|
|
color((255/steps)*j, (255/steps)*j, 0),
|
|
color((255/steps)*j, ((255/1.5)/steps)*j, 0),
|
|
color((255/steps)*j, ((255/2)/steps)*j, 0),
|
|
color((255/steps)*j, ((255/2.5)/steps)*j, 0),
|
|
color((255/steps)*j, 0, 0),
|
|
color((255/steps)*j, 0, ((255/2)/steps)*j),
|
|
color((255/steps)*j, 0, (255/steps)*j),
|
|
color(((255/2)/steps)*j, 0, (255/steps)*j),
|
|
color(0, 0, (255/steps)*j),
|
|
color(0, (255/steps)*j, ((255/2.5)/steps)*j),
|
|
color(0, (255/steps)*j, 0),
|
|
color(((255/2)/steps)*j, (255/steps)*j, 0) };
|
|
for (int i=0; i< segs; i++){
|
|
fill(cols[i]);
|
|
arc(x, y, radius, radius, interval*i+rotAdjust, interval*(i+1)+rotAdjust);
|
|
}
|
|
radius -= segWidth;
|
|
}
|
|
}
|
|
}
|