Sweet visualization thingy here https://processing.org/.
I made a video.
https://vimeo.com/139664336
Code written using the rectangle class.
public int snakes = 500; public int[] numholdx = new int[snakes]; public int[] numholdy = new int[snakes]; public color[] colorhold = new color[snakes]; void setup() { for (int k = 0 ; k < snakes; k++) { numholdx[k] = 635; numholdy[k] = 363; } int swap = 0; for (int k = 0 ; k < snakes; k++) { switch(swap) { case 0: colorhold[k] = #f7fcfd; break; case 1: colorhold[k] = #e5f5f9; break; case 2: colorhold[k] = #ccece6; break; case 3: colorhold[k] = #99d8c9; break; case 4: colorhold[k] = #66c2a4; break; case 5: colorhold[k] = #41ae76; break; case 6: colorhold[k] = #238b45; break; case 7: colorhold[k] = #005824; break; } swap +=1; if ( swap == 8 ) swap = 0; } size(1280, 720); background(0); } void draw() { for ( int line = 0; line < snakes; line ++) { fill(colorhold[line]); int cline = line - 1; if (cline == -1) { cline = 7; } stroke(colorhold[cline]); int r = int(random(0,4)); //random direction. int len_max = int(random(0,5)); //direction. int keep_dir = r; //box size. int size = 2; //check border. if ( keep_dir == 1 && numholdy[line] < 0 ) keep_dir = 3; else if ( keep_dir == 3 && numholdy[line] > 1280 ) keep_dir = 1; else if ( keep_dir == 2 && numholdx[line] < 0 ) keep_dir = 0; else if ( keep_dir == 0 && numholdx[line] > 1280 ) keep_dir = 2; if ( keep_dir == 0) { rect( numholdx[line] + size, numholdy[line], size, size); numholdx[line] += size; } else if ( keep_dir == 3) { rect( numholdx[line], numholdy[line] + size,size, size); numholdy[line] += size; } else if ( keep_dir == 2) { rect( numholdx[line] - size, numholdy[line], size, size); numholdx[line] -= size; } else if ( keep_dir == 1) { rect( numholdx[line], numholdy[line]- size,size, size); numholdy[line] -= size; } } } |