Code for Dextro.org algorithmic image "H013" written by Walter Gorgosilits (Dextro.org) between 1994 and 2017. For research only. No commercial or secret service/clandestine use. int ble = 5; int a = 1024; int b = 768; int m3 = 1; int num1 = 10; int num2 = 100000; int m = 0; float[] xli = new float[num2]; float[] yli = new float[num2]; float[] d1li = new float[num1]; float[] pxli = {1300.7008, 256.20288, 1982.8766, 295.5078, 733.5408, 814.865, 133.01819, 394.63843, 1414.1715, 862.7296}; float[] pyli = {228.75046, 633.3953, 615.8025, 110.97954, 449.41425, 102.314575, 415.1256, 473.2528, 508.63284, 314.68866}; float x1, y1, x2, y2, d1, d2, d3, dx, dy, ff, fff, ffx, ffy, xx2, yy2, xx3, yy3, xxp, yyp, xx, yy, xxc, yyc; int SEGx = 0; int SEGy = 1; void setup() { size(4800, 3600, P2D); background(0); frameRate(900); stroke(255, ble); smooth(); pxli = sort(pxli); pyli = sort(pyli); for (int i = 0; i < num2; i++) { xli[i] = random(a*100)/200; yli[i] = random(b*100)/400 +150; } for (int i = 0; i < num1/2; i++) { x1 = pxli[2*i]; y1 = pyli[2*i]; x2 = pxli[2*i+1]; y2 = pyli[2*i+1]; dx = abs(x1 -x2); dy = abs(y1 -y2); d1 = sqrt(dx*dx +dy*dy); if (d1 == 0) {d1 = 1;} d1li[i] = d1; } } void draw() { m = m +1; if (m == 4) { m = 0; m3 = m3 +1; for (int i = 0; i < num2; i++) { xli[i] = random(a*100)/200; yli[i] = random(b*100)/400 +150; } } for (int i = 0; i < num1/2; i++) { x1 = pxli[2*i]; y1 = pyli[2*i]; x2 = pxli[2*i+1]; y2 = pyli[2*i+1]; d1 = d1li[i]; for (int n = 0; n < num2; n++) { xx = xli[n]; yy = yli[n]; xxc = int(xx*2)/2; yyc = int(yy); dx = abs(xx -x1); dy = abs(yy -y1); d2 = sqrt(dx*dx +dy*dy); dx = abs(xx -x2); dy = abs(yy -y2); d3 = sqrt(dx*dx +dy*dy); if (d1 == 0) {d1 = 1;} xx = xx -(xx -x2)/d1; yy = yy -(yy -y2)/d1; fff = d2; xxp = xx +cos(d3*PI/10)*fff; yyp = yy +sin(d3*PI/10)*fff; xx2 = tan(d2/10)*100; yy2 = sin(d2)*100; xx3 = tan(d3/20)*100; yy3 = atan(d3/3)*100; ff = min(xx2, xx3); if (ff == 0) {ff = 0.0001;} xx = xx +(xx -xxp)/ff; ff = max(yy2, yy3); if (ff == 0) {ff = 0.0001;} yy = yy +(yy -yyp)/ff; ff = min(xx2, xx3); if (ff == 0) {ff = 0.0001;} xx = xx +(xx -xxp)/ff; ff = max(yy2, yy3); if (ff == 0) {ff = 0.0001;} yy = yy +(yy -yyp)/ff; if (i == num1/2-1) { ffy = (yy-296)*6 +1000; if ((ffy < 0) || (ffy > 1300)) {xx = random(a*100)/200;} ffx = (xx-573)*6 +1000; if ((ffx < 0) || (ffx > 640)) {yy = random(b*100)/400 +150;} stroke(0, ble); if (abs(yyc -yyp) < 55) {stroke(255, 140, 100, ble);} if (abs(xxc -xx) < 3.1 -((ffx*1.6 +1800) -130)/4200) {stroke(255, ble);} point((ffx*1.6 +2670)*7.2 -SEGx*4800, (ffy*1.6 -400)*7.2 -SEGy*3600); } xli[n] = xx; yli[n] = yy; } } if (m3 == 16000){ saveFrame(); m3 = 0; m = 0; background(0); SEGx = SEGx +1; if (SEGx == 3) { SEGx = 0; SEGy = SEGy +1; if (SEGy == 3) { SEGy = 0; } } } }