xxxxxxxxxx
60
let minVal = -0.5;
let maxVal = 2.5;
let angle = 0;
function setup() {
createCanvas(200, 200);
pixelDensity(1);
minSlider = createSlider(-2.5, 0, -2.5, 0.01);
maxSlider = createSlider(0, 2.5, 2.5, 0.01);
}
function draw() {
let maxiterations = 100;
loadPixels();
for (let x = 0; x < width; x++) {
for (let y = 0; y < height; y++) {
let a = map(x, 0, width, minSlider.value(), maxSlider.value());
let b = map(y, 0, height, minSlider.value(), maxSlider.value());
// let ca = map(mouseX, 0, width, -1, 1); //-0.70176;
// let cb = map(mouseY, 0, height, -1, 1); //-0.3842
let ca = sin(angle);
let cb = 0;
angle += 0.02;
let n = 0;
while (n < maxiterations) {
let aa = a * a - b * b;
let bb = 2 * a * b;
if (a + b > 4) {
break;
}
a = aa + ca;
b = bb + cb;
n++;
}
let bright = map(n, 0, maxiterations, 0, 1);
bright = map(sqrt(bright), 0, 1, 0, 255);
if (n == maxiterations) {
bright = 0;
}
let pix = (x + y * width) * 4;
pixels[pix + 0] = bright;
pixels[pix + 1] = bright;
pixels[pix + 2] = bright;
pixels[pix + 3] = 255;
}
}
updatePixels();
}