let proportionOfWhite = 0.618;
let topLeftToBottomRight = true;
colorMode(HSB, 360, 100, 100, 100);
background(0, 0, 100, 100);
if (topLeftToBottomRight) {
crossPoint = createVector(random(width), random(width));
delta = 5 + 10 * random();
fill(randomColor(proportionOfWhite));
rect(0, 0, crossPoint.x, crossPoint.y);
fill(randomColor(proportionOfWhite));
rect(crossPoint.x, crossPoint.y, width, width);
cross(crossPoint, delta);
topLeftToBottomRight = false;
crossPoint = createVector(random(width), random(width));
delta = 5 + 10 * random();
fill(randomColor(proportionOfWhite));
rect(crossPoint.x, 0, width, crossPoint.y);
fill(randomColor(proportionOfWhite));
rect(0, crossPoint.y, crossPoint.x, width);
cross(crossPoint, delta);
topLeftToBottomRight = true;
function randomColor(proportionOfWhite) {
let pallet = [10, 50, 210];
if (random() > proportionOfWhite) {
return color(pallet[int(random(3))], 100, 100, random(100));
return color(0, 0, 100, random(100));
function cross(crossPoint, thickness) {
line(0, crossPoint.y, width, crossPoint.y);
line(crossPoint.x, 0, crossPoint.x, width);