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 a = 1024; int b = 768; int ble = 5; int m3 = 1; int num1 = 30; int num2 = 50000; int m = 0; float[] xli = new float[num2]; float[] yli = new float[num2]; float[] d1li = new float[num1]; float[] pxli = {522.25, 656.29, 624.15, 176.19, 988.59, 480.67, 629.86, 897.76, 163.16, 391.05, 44.74, 155.7, 73.46, 623.27, 322.55, 570.67, 135.12, 389.07, 358.71, 589.19, 346.29, 324.14, 110.04, 244.79, 677.86, 24.95, 139.78, 693.47, 482.1, 319.81}; float[] pyli = {365.98, 743.5, 114.55, 522.08, 500.59, 420.44, 100.01, 320.5, 412.06, 409.95, 211.29, 46.07, 615.05, 607.61, 294.44, 672.8, 262.8, 539.7, 531.89, 292.3, 435.78, 568.56, 491.96, 370.39, 490, 444.01, 6.88, 35.01, 202.03, 243.86}; float xx, yy, x1, y1, x2, y2, dd, dx, dy, d1, d2, d3, ff, m33, xxc, yyc, xxp, yyp, fff, xx2, yy2, xx3, yy3, ffx, ffy; void setup() {size(1920, 1200, P2D); background(0); frameRate(200); smooth(); for (int n = 0; n < num2; n++) {xli[n] = random(a/2)/2 +200; yli[n] = random(b/2)/2 +140; yli[n] = 20;} 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); d1li[i] = d1;}} void draw() {m = m+1; if (m == 3) {m = 0; m3 = m3 +1; for (int n = 0; n < num2; n++) {xli[n] = random(a/2)/2 +200; yli[n] = random(b/2)/2 +140;}} 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 = xx; yyc = 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/max(1, abs(sin(d1-d2+d3)*20 +1)); xxp = xx -cos(d3*PI/10)*fff; yyp = yy -sin(d3*PI/10)*fff; xx2 = tan(d2/10)*200; yy2 = sin(d2)*200; xx3 = tan(d3/20)*200; yy3 = atan(d3/3)*200; 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/2)/2 +200;} ffy = (ffy*1.6 -400); ffx = (xx-573)*6 +1000; if ((ffx < 0) || (ffx > 640)) {yy = random(b/2)/2 +130;} ffx = ((ffx*1.6 +1800) +170); stroke(255, ble); if (abs(xxc -xx) < 0.12) {stroke(255, 0, 0, ble);} if (abs(yyc -yy) < 70) {stroke(0, 200, 255, ble);} point(ffx, ffy);} xli[n] = xx; yli[n] = yy;}} if (m3 == 100){saveFrame(„X_#################.tif“); m3 = 0; m = 0; background(0);}}