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 = {100, 150, 170, 200, 290, 300, 310, 600, 650, 700}; float[] pyli = {293.41, 205.91, 112.04, 248.39, 711.13, 218.19, 196.35, 500.31, 448.68, 89.35}; 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 = 0; 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; //println(m3); 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)/100;} 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; } } } }