xxxxxxxxxx
var screenSize;
var gB;
var gBRes = 2048;
function setup() {
sizeWindow();
pixelDensity(1);
createCanvas(screenSize, screenSize);
colorMode(HSB, 360);
initiate();
gB = createGraphics(gBRes, gBRes);
gB.colorMode(HSB, 360);
gB.rectMode(CENTER);
}
function initiate() {}
function draw() {
// Draw something to the graphics buffer
gB.clear();
gB.resetMatrix();
gB.noFill();
gB.stroke(30, 15);
gB.strokeWeight(gBRes * 0.00125);
gB.translate(0, gBRes * 0.5);
for (var i = 0; i <= 256; i += 1) {
// Choose a point on an ellipse to the left
var lT = random(-PI * 0.5, PI * 0.5);
var lR = gBRes * random() * random() * random() * random();
var lX = gBRes * 0.05 + lR * cos(lT);
var lY = lR * sin(lT);
gB.point(lX, lY);
// Choose a point on an ellipse to the right
var rT = random(PI * 0.5, PI * 1.5);
var rR = gBRes * random() * random() * random() * random();
var rX = gBRes * 0.95 + rR * cos(rT);
var rY = rR * sin(rT);
gB.point(rX, rY);
// Join the points
gB.beginShape()
gB.curveVertex(lX, lY);
gB.curveVertex(lX, lY);
gB.curveVertex(gBRes * 0.5, gBRes * -0.5 * random());
gB.curveVertex(gBRes * 0.5, gBRes * 0.5 * random());
gB.curveVertex(rX, rY);
gB.curveVertex(rX, rY);
gB.endShape();
}
// Render image to canvas
background(360, 15);
image(gB, 0, 0, width, height);
}
function sizeWindow() {
screenSize = min(windowWidth, windowHeight);
}
function windowResized() {
sizeWindow();
resizeCanvas(screenSize, screenSize);
}
function mouseClicked() {
initiate();
}