Files
processing4/java/examples/Books/Nature of Code/introduction/NoiseDistribution/NoiseDistribution.pde

34 lines
744 B
Plaintext

// Daniel Shiffman
// The Nature of Code
// Testing Distribution of Perlin Noise generated #'s vs. Randoms
float[] vals;
float[] norms;
float xoff = 0.0f;
void setup() {
size(300,200);
vals = new float[width];
norms = new float[width];
}
void draw() {
background(100);
float n = noise(xoff);
int index = int(n*width);
vals[index]++;
xoff += 0.01;
stroke(255);
boolean normalization = false;
float maxy = 0.0;
for (int x = 0; x < vals.length; x++) {
line(x,height,x,height-norms[x]);
if (vals[x] > height) normalization = true;
if(vals[x] > maxy) maxy = vals[x];
}
for (int x = 0; x < vals.length; x++) {
if (normalization) norms[x] = (vals[x] / maxy) * (height);
else norms[x] = vals[x];
}
}