xxxxxxxxxx
var scaleFactor;
var gridX = 60;
var gridY = 40;
function setup() {
createCanvas(windowWidth, windowHeight);
ellipseMode(RADIUS);
rectMode(CORNERS);
scaleFactor = min(width/(gridX-1),height/(gridY-1))/1.2;
}
function draw() {
background(100);
translate(width/2,height/2);
scale(scaleFactor,scaleFactor);
translate(-(gridX-1)/2,-(gridY-1)/2);
noFill();
strokeWeight(1/(scaleFactor*2));
// draw origin axes
//line(-(windowWidth-10)/(scaleFactor*2),0,(windowWidth-10)/(scaleFactor*2),0);
//line(0,-(windowHeight-10)/(scaleFactor*2),0,(windowHeight-10)/(scaleFactor*2));
for (let i = -0.5; i < gridX+0.5; i++) {
line(i,-0.5,i,gridY-0.5);
}
for (let i = -0.5; i < gridY+0.5; i++) {
line(-0.5,i,gridX-0.5,i);
}
fill(150);
// TODO: add noise to this
for (let i = 0; i < gridX; i++) {
for (let j = 0; j < gridY; j++) {
let e = gridX/2.1- abs(i-gridX/2+0.5);
let f = gridY/2.1- abs(j-gridY/2+0.5);
fill(min(e,f)>0? 255: 0);
//fill(noise(i/12,j/12)*200);
circle(i, j, 0.5);
}
}
}