let x,y,val;
function setup() {
createCanvas(400,400);
pixelDensity(1);
}
function draw() {
loadPixels();
n = 4
w = 20
h = 1
dx = w / width;
dy = h / height;
x = -w / 2;
t=2*cos(frameCount/100)
for (let i = 0; i < width; i += 1) {
y = -h / 2;
for (let j = 0; j < height; j += 1) {
p =t*t/y;
q = y+t*x/y
val = cos(n * sin(p) + q)-cos(q+p-x)//+0.2*tan(q);
col = color((val + 1) * 255/2);
index = 4 * (i + j * width);
pixels[index] = red(col);
pixels[index + 1] = green(col);
pixels[index + 2] = blue(col);
pixels[index + 3] = alpha(1);
y += dy;
}
x += dx;
}
updatePixels();
}